無保証です。
このプログラムは、BitBankで、暗号通貨を売買して利益を出そうとするプログラムです。
暗号通貨を買います。買った値段の1.0005倍(設定変更可能)の価格で売ります。この動きを繰り返すだけの簡単な仕組みです。
- 暗号通貨を買います。 現在の購入価格販売価格を調べて、0円(設定変更可能)以上の残金があり、上昇トレンドの場合(注3)、「購入価格」で買い注文を出します。この注文が約定するまで待ちます。数秒(1秒〜3秒)ごとに約定したか調べますが、3回(設定変更可能)調べても約定しなかった場合はこの買い注文をキャンセルします。キャンセルしたら、価格調査からやり直します。このキャンセル動作によって、急激な市場価格変化に対応できるようになっています。(注1) 約定した場合は次に進みます。
- 買った値段の1.0001倍(設定変更可能)の価格で売ります。 買った値段の1.0001倍(設定変更可能)の価格か「販売価格」の高い方で売り注文を出し(注4)、約定するまで待ちます。数秒(1秒〜3秒)ごとに約定したか調べますが、1回(設定変更可能)調べても約定しなかった場合はこの買い注文をキャンセルします。キャンセルしたら、価格調査からやり直します。このキャンセル動作によって、急激な市場価格変化に対応できるようになっています。(注1) 約定した場合は次に進みます。市場の価格が下がっている状態だと、約定されずにずっとこのままです。(注2) 約定した場合は次に進みます。
- 最初に戻ります。
注1:買い注文が一部約定している状態でキャンセルを行ってしまう場合があります。そうすると、その通貨を購入したままとなります。時々、購入したままになっていないか確認したほうがよいでしょう。
注2:つまり、高掴みしたままになる場合があります。が、設定ファイルで設定した価格以下に下がった場合は「高掴み」と判断して、売注文をだしたまま手放します。ボットは、1にもどり買売を繰り返す動作に戻ります。
注3: トレンドを見て買い注文を出すかどうか決めます。トレンドは3回の価格を見て決めます。「前々回→前回=上、前回→今回=上」のときと「前々回→前回=小下げ、前回→今回=大上げ」のときだけ「上がりそう」と判断します。下がりそうな場合は、買い注文を出さずに、価格調査に戻ります。上がりそうな場合は、買い注文を出します。 過去900回(設定可能)の平均価格を上回ったら(ブレイクアウトしたら)、上昇トレンドとします。
注4:過去900回(設定可能)の平均価格を下回ったら、下降トレンドに切り替わったとして、売注文をだします。
プログラム全体としては、この手順を行うクラスを、btc_jpy1つ(ペアも個数も設定変更可能)のインスタンスを生成し、それぞれ実行しています。
無保証です。
bitbankのAPIキーを取得し、apikey.yamlに記述してください。 各通貨ペアの右側(たとえばbch_jpyならjpy)の通貨を、最低でも1万円ほど準備(bitbankに入金)してください。 プログラムでは、ruby_bitbankccを使用していますので、これをインストールしてください。 あとは、実行すれば動くと思います。
約定するとslackに通知する機能があります。
slack BOTとして動作して、利益合計を表示したりするコマンドを実行する機能があります。
無保証です。