728x90
단기적 주가를 예측하는것은 참 어렵습니다.
그 누구도 예측할수 없다는 이야기가 많습니다.
원숭이가 개미보다 심지어 펀드매니저 보다 수익율이 좋다
라는 이야기를 많이 들어보셨을것입니다!!
그래서 생각해보았습니다.
내가 원숭이가 되면어떨까???
이번 포스팅은 실제 원숭이 매매법을 기획해보고 실행에 옮겨보며
이후 그 결과를 함꼐 공유하도록하겠습니다.
원숭이 매매법.
매시간 00분 아래 6가지 규칙으로 주사위가 던져집니다
- 포지션 시작시간 선택 : 0 ~ 60분 중 하나 (1/60)
- 포지션 유지시간 선택 : 0 ~ 60분 중 하나 (1/60)
- 포지션 선택 : 롱 / 숏 / 홀드 중 하나 (1/3)
- 코인 선택 : 선물 거래가 가능한 코인 중 하나 (1/ 코인개수)
- 레버리지 선택 : 1 ~ 5 배 중 하나 (1/5)
- 금액 선택 : $10 ~ $30 중 하나 (1/3)
파이썬 코드도 공유합니다!!
import random
import requests
## 1. 포지션 시작시간 선택
start_time = random.randint(1,60)
start_time
## 2. 포지션 유지시간 선택
holding_time = random.randint(1,60)
holding_time
## 3. 포지션 선택
position = random.randint(1,3)
position # 1- long / 2 - short / 3 - hold
## 4. 코인 선택
result = requests.get('https://fapi.binance.com/fapi/v1/ticker/bookTicker')
target_coin = pd.DataFrame(json.loads(result.text))['symbol'].sample(1).iloc[0]
target_coin
## 5. 레버리지 선택
leverage = random.randint(1,5)
leverage
## 6. 금액 및 코인개수 선택
investing_usd = random.randint(1,3) * 10
coin_price = float(binance_client.futures_symbol_ticker(symbol=target_coin)['price'])
coin_count = investing_usd / coin_price
coin_count = round(coin_count,0)
이제 테스트 거래를 진행!!
MongoDB를 통하여 거래 이력을 남겨봅니다.
-파이썬 코드
if position_real == "HOLD":
my_dict = {
'TYPE': "HOLD",
'timestamp': datetime.now().strftime("%Y%m%d-%H%M%S"),
'key' : timeskey,
'coin_nm' : target_coin ,
'coin_count' : coin_count ,
'position' : position_real,
'investing_usd': investing_usd,
'leverage': leverage,
"start_time" : start_time,
"holding_time" : holding_time,
"price" : 0,
}
mycol.insert_one(my_dict)
else:
## 실제 액션하기
print("START WAITING")
time.sleep(start_time * 60)
binance_client.futures_create_order(
symbol=target_coin,
type='MARKET',
side= position_real,
quantity=coin_count * leverage
)
print("START MARKET position")
##
my_dict = {
'TYPE': "START",
'timestamp': datetime.now().strftime("%Y%m%d-%H%M%S"),
'key' : timeskey,
'coin_nm' : target_coin ,
'coin_count' : coin_count ,
'position' : position_real,
'investing_usd': investing_usd,
'leverage': leverage,
"start_time" : start_time,
"holding_time" : holding_time,
"price" : float(binance_client.futures_symbol_ticker(symbol=target_coin)['price']),
}
mycol.insert_one(my_dict)
print("START SAVING COMPLETE, sleeping")
time.sleep(holding_time * 60)
## 포지션 청산
print("START to FINISH position")
position_end = "SELL" if position_real == 'BUY' else "BUY"
## 실제 액션하기
binance_client.futures_create_order(
symbol=target_coin,
type='MARKET',
side= position_end,
quantity=coin_count * leverage
)
print("complete FINISHing position")
##
my_dict = {
'TYPE': "END",
'timestamp': datetime.now().strftime("%Y%m%d-%H%M%S"),
'key' : timeskey,
'coin_nm' : target_coin ,
'coin_count' : coin_count ,
'position' : position_end,
'investing_usd': investing_usd,
'leverage': leverage,
"start_time" : start_time,
"holding_time" : holding_time,
"price" : float(binance_client.futures_symbol_ticker(symbol=target_coin)['price']),
}
mycol.insert_one(my_dict)
##
이렇게 $1000 로 시작한 거래는 4번의 거래 후 -0.7%의 수익률을 기록하고있습니다!..
앞으로 과연 원숭이매매의 결과는 어떻게될까요!?
crontab을 통해 매시간 거래가 시작됩니다!!!
다음 포스팅은 즐거운 마음으로 쓸 수 있기를~~~!^^
728x90
'Coin Market Review > 자동매매알고리즘탐구' 카테고리의 다른 글
원숭이 매매법 결과 공개!!! (0) | 2022.05.27 |
---|---|
황썸 ETF 중간현황(2) (0) | 2022.04.13 |
황썸 ETF 중간현황 (0) | 2022.02.26 |
나만의 코인 ETF를 운영해보자!! (3) - 리밸런싱 (3) | 2022.02.14 |
돈키언채널돌파 롱&숏(1일) - 횡보장에서는? (0) | 2022.02.05 |
댓글