はじめまして!初めてalisで記事を書きます。
今回は普段動かしているpythonによるBTCアビトラプログラムでどのくらい稼げるのかを記事にしてみます。
プログラム自体は6ヵ月ほど動かしていますが、あまり記録を取っていなかったのですが、たぶん損はしていないと思いますww
プログラムはhigoxさんのnoteを購入して少しカスタマイズして使っています。
https://note.mu/higox/n/n07936bc622e5
カスタマイズした部分は
・取引時にライン通知
・価格差の開きを必ず600円以上に設定。
・逆取引のトリガーを200円以下&-1×アビトラした価格差+700円以上
という条件をつけています。
使用している取引所はcoincheckとLiquid(quoinexchange)です。
11月15日から12月1日までに2606円の利益が上がりました。11月26か27日にliquidのサーバーエラーの影響で損が出てしまいましたが、十分な結果だと思います。
ちなみにアビトラプログラムはAWSの無料分でちょうど収まるので費用は全く掛かりません。
各取引所の残高の状況は自分でpythonプログラムを書いて定期的にline通知しています。エラーが起こったときなどは取引所にログインしなくても残高のバランスを見ればいいので楽です。
せっかくなので残高照会用のpythonコードを載せておきます。
※インデントは調整してください。
# coding:utf-8
####import設定####
import socket
import datetime
import hashlib
import hmac
import requests
import json
import time
import sys
import ccxt
quoinex = ccxt.quoinex({'apiKey': '--','secret': '--',})
#api設定
coin_access_key = '--' #コインチェックのAPIアクセスキーcoin_secret_key = '--' #コインチェックのAPIシークレットキー
#coincheckのPrivateAPIリクエスト送信関数
def ccPrivateApi(i_path, i_nonce, i_params=None, i_method="get"):
API_URL="https://coincheck.com"
headers={'ACCESS-KEY':coin_access_key,
'ACCESS-NONCE':str(i_nonce),
'Content-Type': 'application/json'}
s = hmac.new(bytearray(coin_secret_key.encode('utf-8')), digestmod=hashlib.sha256)
if i_params is None:
w = str(i_nonce) + API_URL + i_path
s.update(w.encode('utf-8'))
headers['ACCESS-SIGNATURE'] = s.hexdigest()
if i_method == "delete":
return requests.delete(API_URL+i_path, headers=headers)
else:
return requests.get(API_URL+i_path, headers=headers)
else:
body = json.dumps(i_params);
w = str(i_nonce) + API_URL + i_path + body
s.update(w.encode('utf-8'))
headers['ACCESS-SIGNATURE'] = s.hexdigest()
return requests.post(API_URL+i_path, data=body, headers=headers)
##LINE関係
#LINEにメッセージを送信する関数
def lineNotify(message):
line_notify_token = 'lineトークン'
line_notify_api = 'https://notify-api.line.me/api/notify'
payload = {'message': message}
headers = {'Authorization': 'Bearer ' + line_notify_token}
requests.post(line_notify_api, data=payload, headers=headers)
def coin_asset():
nonce = int((datetime.datetime.today() - datetime.datetime(2017,1,1)).total_seconds()) * 100
c = ccPrivateApi("/api/accounts/balance",nonce,)
r = c.json()
return r
coin=coin_asset()
coinjpy=coin["jpy"]
coinbtc=coin["btc"]
result = quoinex.fetch_balance()
quojpy=result["info"][0]["balance"]
quobtc=result["BTC"]["total"]
print(datetime.date.today())
print("\n")
print("JPY個別")
print("coincheck")
print(float(coinjpy))
print("quoinex")
print(float(quojpy))
print("JPY合計")
jpyz=float(coinjpy)+float(quojpy)
print (jpyz)
print("\n")
print("btc個別")
print("coincheck")
print(float(coinbtc))
print("quoinex")
print(float(quobtc))
print("btc合計")
btcz=float(coinbtc)+float(quobtc)
print (btcz)
lineNotify("\n jpy合計:"+str(jpyz)+"\n btc合計:"+str(btcz))
以上です。このコードに各APIキーをいれて実行すると残高がline通知されます。
大雑把に書いてしまいましたのでアビトラの質問等があればコメント頂けると嬉しいです。
良ければアビトラにチャレンジしてみて下さい。
書いた人