ビットコイン自動売買botを作る:「人類が人類のみ出来ることに専念するためのAI」を目指して(その1)(「IISIA技術ブログ」Vol. 11) - IISIA 株式会社原田武夫国際戦略情報研究所 - haradatakeo.com
  1. HOME
  2. ブログ
  3. ビットコイン自動売買botを作る:「人類が人類のみ出来ることに専念するためのAI」を目指して(その1)(「IISIA技術ブログ」Vol. 11)

ビットコイン自動売買botを作る:「人類が人類のみ出来ることに専念するためのAI」を目指して(その1)(「IISIA技術ブログ」Vol. 11)

「人工知能(AI)は”人類が人類のみ出来ることに専念するために導入されるべきものである」

これがグローバル・アジェンダ(ただし、今始まっている全く新しいもの。別名”Basel Mission”)における嘘偽らざるコア中のコアである。これに沿って最近は弊研究所からも最近は分かりやすく調査分析レポートで皆様に語りかけているのであるが、どうもピンと来られている方は多く無い様に感じる。弊研究所は何もconspiracy theoryを面白おかしく語ったり、はたまた根拠無き「情報商材」を売りつけることを生業にしているものでは全く無い。もっといえば公開情報(open source)を「評論」することを業務として行っているわけではないのだ。未来シナリオをベースにそれをアップデートし、より研ぎ澄ましていく中で進むべき道を示す。ここに来てこれに人工知能科学という「骨組み」を一本通すことによって、今度はこの未来シナリオを通じて見えて来る「未来イメージ」を現実のものにするという能力が我が研究所には加わった。もはや「誰かが何かを言っていることについて云々する」機関ではなく、「はっきりと見え始めている未来シナリオを現実にしていく」機関へと変貌を遂げたのだ。この「技術ブログ」もそうした観点から(どうしても不定期の公表になってしまうのが申し訳無いが)綴らさせて頂いている。

今回から2回にわたり、特にこのテーマに直結した形、かつ読者の皆様にも分かりやすい形で記すことが出来ればと考えている。その意味で第1回目である今回は「ビットコイン自動売買bot」について、そして第2回目は「国会答弁作成システム」についてそれぞれ取り上げる。一見すると両者は全く無関係に見えるかもしれない。しかしこれらは少なくとも筆者にとっては互いに密接なものである。そもそも筆者は外務省にて外務I種職員として12年間奉職した際、強烈に感じた違和感をベースに2005年よりアントレプレナーの道を選んだ。その際、外務省で培った能力を存分に生かして起業したわけであるが、そうした形で「手元にある道具(能力)をもって行う起業」のことを最近ではエフェクチュエ―ション(effectuation)と言うようだ。「ビジネスプランを立ててからきっちりと投資契約もつくって」といったヴェンチャー・キャピタル(VC)寄りの起業や、あるいは「まずはデザインで、とにかく作ってみよう」といったデザイン思考(design thinking)寄りの起業からすると極めて地味なのがこのエフェクチュエ―ション(effectuation)寄りの起業パターンだ。我が国でもあまりこれが大っぴらに語られることはないように感じている。

なぜ筆者の場合、最初からエフェクチュエ―ション(effectuation)だったのかといえば、国家公務員として一定のリテラシーとスキルはあったものの、そもそも「カネ」が無かったからである。当時はヴェンチャー・キャピタル(VC)に普通のアントレプレナーがタッチすることなどおよそ不可能であり、しかもいわゆる「テック系」でもない筆者の起業にこれら金融界の猛者たちが関心を持つはずもなかったのである。だからこそ、まずは「カネ」を創り出すことに筆者のアントレプレナーシップにおいては専念したし、また今でもそうしている。アントレプレナーシップにおいて「カネ」は全てではもちろん無い。「カネ」は手段であってゴールではないのである。だがしかし、「カネ」が重要ではないのかというと全くそんなことは無いのである。それもまたアントレプレナーとしてこの18年ほど過ごしてきて痛感・体感しているところである。

そうした状況に今、根本的な変化が生じているということをここに来て弊研究所の調査分析レポートではしきりに述べてきた経緯がある。2008年秋に発生したいわゆる「リーマン・ショック」以降、世界中の中央銀行たちは量的緩和を続け、それが「異次元」のレヴェルにまで達してしまっている。その結果、国際統計を見ると実にグローバル社会全体が毎年創り出す国内総生産(GDP)の総額を4倍したレヴェルにまで、グローバル金融マーケットを駆け巡る「カネ」の量は達しているというのだ。この新しい現実(new realities)の与えるインパクトは甚大だ。

この技術ブログを読んでいる多くの読者の皆様は自ら「デジタル」の世界に取り組み、人工知能(AI)にも取り組まれている方々だと思う(そう信じている)。しかも弊研究所の公式ホームページにたどり着いたということは「グローバル」「金融資本主義(financial capitalism)」にもきっと造詣が深いと思うのである(これもまたそう信じている)。仮にそうした読者の皆様が経営者である場合、次の様に強く感じることは無いだろうか。

「従業員たちの創り出す付加価値が余りにも少ない。発破をかけているのだがどうしても追い付かない。」

「生成系AI(generative Ai)まで登場し、グローバル社会は指数関数的なダイナミズムで動いているというのに、なぜ従業員たちは以前と変わらぬ仕事を続ければ良いと考え、それ以上のことをしようとしないのか」

しかしその様な「嘆きの対象」である従業員の側に立つと、そうは見えないのである。これまでと同じで何が悪いのか、それによってそれなりのお給料ももらっているのだから何も問題ないのではないか。「社長」こそ、何かにとりつかれているように働いており、「頭がおかしいのではないか」というわけなのだ。一体何が私たちの会社=職場で起きているというのであろうか?

この問いに対して答えるのが今回の「技術ブログ」のゴールである。やや前置きが長くなったので端的に述べよう。私たちはいよいよ「マルクスの呪縛」から逃れる時が来たのである。「マルクスの呪縛」、それは言わゆる「労働価値説」である。今、試しにこの言葉をwikipediaで検索してみると次の様な解説が出て来る。

労働価値説(ろうどうかちせつ、labour theory of value)とは、人間の労働価値を生み、労働が商品の価値を決めるという理論。ウィリアム・ペティにより初めて着目されアダム・スミスデヴィッド・リカードを中心とする古典派経済学の基本理論として発展し、カール・マルクスに受け継がれた。労働価値論とも言われる。

要するに「人間が働くからこそ価値が生まれる」というわけなのだ。だからこそ「働かざるもの食うべからず」ということになってくる。17世紀にこの概念が考案されて以来、人類は西洋社会を筆頭にこの概念が語るシステムにとらわれてきた。そしてこの概念の上に立って、壮大な歴史観を繰り広げ、プロパガンダを展開したのがカール・マルクスとその一派だったというわけなのである。確かにこれに対してマネタリズム=「カネがカネを生む理論」以来の学説的伝統が攻撃を繰り返し仕掛けてきたことは事実だ。だが、これまでマネタリズム的政策とその学説が「労働価値説」を完全に打破することに成功しはしなかったのである。

こうした状況を一気に転換させたのがサトシ・ナカモトの考案によるビットコインであった。なぜか?暗号資産=仮想通貨はそもそも単なるデータであるにも拘わらず、どういうわけか実物経済、そしてそれをベースとした法定通貨と交換され始めたからである。一度この動きが始まるとその伝搬と拡大は凄まじく速かった。しかもベースとなっているブロックチェーンが原理的に「国家独占」の出来ない仕組みであるが故に、その取引所は自ずから複数、世界中に存することになった。インターネットでそれらは接続されているが、どうして取引所間でのビットコイン価格には(ミリ秒単位)であっても差異が出る。この点に注目して開発されたのが「裁定取引(arbitrage)」を基本とするビットコイン自動売買botというわけなのだ。

そして今、このビットコイン自動売買botのコードを巡り、少なくとも日本語で書かれた公開媒体では議論が鎮静化したかの様に見える。一時期に比べると全くもって熱い議論がネット上のgeekたちの間で行われているとは思えないのである。その結果、ビットコイン価格が「半減期」を前に急騰し始めている中、我が国では「ビットコインは結局、buy and hold戦略、すなわち一度買ったらばそのまま持っておくのが一番だ」といった議論が横行するに至っているというわけなのである。

「人の行かぬ獣道にこそ、咲く花あり」

我が国の戦後を代表する起業家が述べた言葉だと聞く。全くもってそのとおりだと感じるわけであり、このビットコイン自動売買botについても全くもって同じなのである。要するに「本当にとんでもない収益が上がるアルゴリズム」が開発されたからこそ、それについて人々は黙して語らず、他方で相も変わらず「自動売買botのブームは終わった」などとうそぶかれているというわけなのである。「金儲けは他人様には言わないで行うべきことだよ」という我がメンターの言葉の一つを今あらためて思い出している。

閑話休題。ビットコイン自動売買botのコアを成すのが「裁定取引(arbitrage)」であることは先ほど述べたとおりである。それでは取引所について何と何を「裁定」するというのであろうか。基本的な考え方としては以下がある。

―取引所間のビットコイン価格差を利用する

―同一の取引所における「先物」と「現物」のビットコイン価格差を利用する

前者についてはさらに1)取引所間でビットコイン・現金を移動させるパターン、及び2)そうした移動を行わないパターンの2種類がある。また後者についても1)先物の「買い」「売り」のどちらかだけに集中するものと、2)先物の「買い」「売り」の両方を取り扱うものの2パターンがある。アルゴリズムは当然、こうした複数のパターンを取り込めば取り込むほど複雑なものになっていく。

# 取引所のインスタンスを作成
A = ccxt.A(api_keys['A'])
B = ccxt.B(api_keys['B'])
C = ccxt.C(api_keys['C'])

exchanges = {'A': A, 'B': B, 'C': C}
balances = {'A': {}, 'B': {}, 'C': {}}
amount = 0.005  # 1回の取引量を0.005 BTCに設定

def fetch_balance(exchange):
    balances = exchange.fetch_balance()
    jpy_balance = balances['JPY']
    btc_balance = balances['BTC']
    return jpy_balance, btc_balance


while True:
    A_price = A.fetch_ticker('BTC/JPY')['last']
    print(A_price)
    B_price = B.fetch_ticker('BTC/JPY')['last']
    print(B_price)
    C_price = C.fetch_ticker('BTC/JPY')['last']
    print(C_price)
    if A_price > C_price > B_price >= 500:
      for i in range(1):
        time.sleep(i)
        if A.fetchBalance().get("BTC")['free'] < amount:
           order1 = None
        else:
            order1 = A.createLimitOrder(
                            symbol = 'BTC/JPY',    # 取引通貨
                            price  = A_price,      # 指値価格
                            side   = 'sell',        # 購入(buy) or 売却(sell)
                            amount = amount        # 購入数量[BTC]
                  )

        if B.fetchBalance().get("JPY")['free'] < amount*B_price:
            order2 = None
        else:
            order2 = B.createLimitOrder(
                           symbol = 'BTC/JPY',    # 取引通貨
                           price  = B_price,      # 指値価格
                           side   = 'buy',        # 購入(buy) or 売却(sell)
                            amount = amount        # 購入数量[BTC]
                  )
# 出力
        print(order1,order2)
      time.sleep(10)

しかし余り物事は複雑にしすぎないようにするのが鉄則だ。裁定取引(arbitrage)とは要するに「異なる2つの価格差をとらえたらば、その瞬間に高値の方では売り、安値の方で買う」ということを繰り返せば良い。したがって上記で示す様なwhile文、for文、range文といったpythonでも基礎的な文法を駆使すればそう難しさを感じることなく、基本的なアルゴリズムは出来上がるのである。

実際にこうしたアルゴリズムを完成させ、筆者自身、国内3か所の取引所(BitFlyer, CoinCheck, bitbank)を対象に運用してみた(各取引所での運用額は150万円ずつとした)。その結果、1週間もするとbuy and hold戦略を漫然と続けているのと少なくとも同じ、あるいはそれ以上の益を出すことが出来た。「それならば買って、ずっと持っておけば良いではないか」と思うかもしれない。しかし問題は「一体何時買えば良く、また何時売れば良いのか」という点にあるのであって、それに対してこの極めて単純なアルゴリズムはいつからでも始められる点に利点があるのだ。ただしいくつかの留保がある。

―ミリ秒単位の高速取引ではないので、取引所によっては全く買えない・売れない時がある。そうなると発注数だけは多くなり、bitbankの場合、30発注で1回取引停止になるので、コードを廻し続けることが出来なくなる

―ビットコイン価格そのものが余りに大きく変化しない時、とりわけ上げ局面でない時には益を出すのが難しいきらいがある。また下げ局面では、先ほど比較において安い価格であるとして追加購入したビットコインの価格がむしろ下がったところで(取引所A)、あらかじめ設定した価格差が取引所AとBとの間で出た、しかも取引所Bのビットコイン価格よりも取引所Aの価格の方が高いとなった場合、Aで「売り」の指示が出てしまう場合すらある。この時、むしろ損失が出てしまう

―その意味で1回の取引あたりのビットコイン単位をどの様にするのか、またコードを廻し始めるタイミングでそれぞれの取引所にてどれだけのビットコインと現金で臨むのかは思案のしどころである

高速取引のためにはGPUといったマシーンを整える必要があり、かつせいぜいのところ主要な取引所が5本の指で数えられるくらいしかない我が国と比べて、例えば米国の様に取引所が数多くあるロケーションの方が有利であることは言うまでもない。以上の様な論点をクリアーした裁定取引(arbitrage)及び高速取引のアルゴリズム開発が米国で進んできているのは当然の流れであるというべきであろう。そしてそうしたアルゴリズムの閉じられた扉にアクセスすることが出来た者たちは、少なくとも技術的には(法的には詰める必要がかなりあるものの)「労働価値説」からの解放を実現することになる。なぜならばそこでビットコイン取引を延々と続け、富を稼ぎ出すのはヒトではなく、「bot」だからだ。その結果、「人間は人間のみ出来ることに専念する」世界が実現する。筆者が見たところ、そうしたbotは既に現実に存在している。ただしアクセス権が公開されておらず、また今後も公開されることはないであろうと筆者は考えている次第である。

「働いて生活のためのカネを得るのではない。カネはあり、生きることは出来るが、その”意味”を求めて、ヒトはやがてカネを払って”意味”あることをむしろしようと努力し始めるのだ」

いよいよ、”その時”が到来した。従業員が「働かない」のではない。「価値創造」の現場が人工知能(AI)の世界に移ったのであって、もはや生身の人間が作り出す「労働価値」にそれは限定されなくなっただけのことなのだ。しかも人工知能(AI)のアルゴリズムに「労務問題」は無く、24時間、何も文句を言わずに働いてくれる。質の良い価値創造を、延々と続けながら。そのことが人類全体に対して与えるインパクトを是非、今から想起しておきたいものである。

 

2023年12月10日 東京・丸の内にて

株式会社原田武夫国際戦略情報研究所 代表取締役/グローバルAIストラテジスト

原田 武夫記す