自動取引botの概念的なものの整理・理解を促すために基本的な部分を説明しようとする試み

楽しい暗号通貨取引のお話です。

いや、個人的には超展開を迎えたレヴュースタァライトの話とかしたいんですけどね。

政治的な判断で。
仕方なくね。

具体的には話題を選定する時間がないっていう。
(8/29 6:30)

自動取引bot。

このサンドバッグでも何度か話題にしている自動取引bot。

暗号通貨のマーケットのAPIを使って、値段確認しーの、取引しーの、ってのを自動でやってくれたりくれなかったりするやーつですね。

今更何いってんだ?

と感じる向きが多いんですかね。

わざわざこんなサンドバッグまで情報収集に来るような熱心な方におかれましてはね。

とはいえ事情により頻繁に「で、なんだったっけ?」と思い返すことが多い自分としましてはこの際基本的なところからまとめて記事のネタを稼いでおくのも悪くないかなと思ったわけです。

実際には事情もクソもなくて、僕がとっとと作らないせいで毎回毎回記憶がおぼろげになっているところからスタートするっていうただそれだけなんですが。

用語とか

そもそもなんの気無しに使ってるけど、ってことは多いもの。
僕の場合も雰囲気で生きているせいでそういうことが多々あり、言い訳はさておきとっとと見ていきます。

bot

そこから!? って感じですけど。
botという言葉には古くから、具体的に言うとプロンテラの下水道からの付き合いがありますけど実はあんまり理解していないんですよね。

ロボットの短縮形で、この辺の分野においては慣例的に自動処理プログラムの総称として扱われるとのこと。
なんでだろう。

そもそもrobotってどういう言葉なんだろう。
とかは気になりますが次行きます次。

api

それもかよ、って感じですが。

アプリケーションプログラミングインタフェース(API、英: Application Programming Interface)とは、広義の意味ではソフトウェアコンポーネントが互いにやりとりするのに使用するインタフェースの仕様である。

自動取引botにおける文脈でのapiというのは、たいていはプログラムから取引所にごにょごにょしてコインの価格やら取引情報を取得したり売買したりするのに必要な憎いあんちくしょうという感じです。
雰囲気でプログラムをやってます

略称を意識したことはなかったんですが、結構広い意味の言葉だったんですね。

自動取引botの概要

基本的にはこれだけです。

  • ループして
    • 価格をチェックして
    • 売買の判断をして
    • 実際に売買をする

これだけのはず。
その前後にごちゃごちゃ書いてあるとすれば、apiを使うために必要なパスワードを決められた形式でセットするためだとか、売買の判断に使うログを作成するためだとかの二次的な処理がほとんどです。

自動取引botの本筋としてはこれだけ。
それぞれで何をしているかというのも一応考えてみます。

価格のチェック

取引所から必要なデータを抜き出してきます。
取引所とか価格とか言ってますが、データの取得先や種類を限定するものではありません。

その手のまとめ情報を提供しているサービスからデータを取得することもあるでしょうし、価格以外にも全体の取引情報を取得することもあるでしょう。

とにかくなんらかのデータを取得するのがここになります。

売買の判断

前段で取得した情報をもとに、何をいくらでどれくらい買うか、売るかを判断します。
あるいは買わない、売らないことを判断するかもしれません。

また、判断の対象には任意の要素が含まれないこともあるでしょう。
たとえば5万円で売られていた某botなんかは、「何を」はBTC限定でしたし、「どれくらい」は最初に設定した数値に固定されているようです。
実際に判断するのは、「いくらで」の部分と「売るか買うか」の部分だけです。

そんな感じで判断の対象となる情報はbotによりさまざまですが、ともあれその手の情報を判断するのがここになります。

実際の売買

ここでは前段で判断した結果に従って取引したいよ!という熱い想いを取引所にぶつけます。

なんで判断とは別枠にしてるのか?
というかそもそもなんでそんな書き方としているのか?

と言うと、取引所からエラーが返ってくることがまれによくあるからですね。
いや、ザイ○さんの話はしてないですよ?

botとしては、この場合に「取引を諦める」か「諦めずに再挑戦する」かの選択をすることになります。
そのへんは設計次第ですね。

だいたいそんな感じ。

さて、ここまでで自動取引botの概要を説明?した気分になりました。

これで理解できるようになるのかは書いた後も傾いだ首が戻らないというのが正直なところではありますが、ひとまず当初の目的は果たしたということでそろそろ出勤しようと思います。
(8/29 7:20)

そもそもここの部分を理解していないと実際にネットに転がってるソースを見ても理解できないと言うか理解できるわけがないという気持ちが残ってしまうのが人情というものです。

なんで、ここの部分を頭に入れた上でもう一度ラブライブ!ソースの解読に挑んでいただければ何かが変わるかもしれません。

なんとなく難しそう……という気持ちがあると、できるものもできませんからね。
ではまあそんな感じで。

B! LINE