noteのタイトル画像

bot製作に生かされた「統計学」との出会い

昨年からbot作りに精進しています。
思い起こせばnoteをつけ始めて一年以上経ってました。
(最初のnote執筆が2018/04/01だった。ちょうど新年度の始めw)

もともとプログラミングが大好きなので、暇があったらいろんなプログラミング言語で遊んでいました。
C言語が主流になる前のアセンブラのまたまた前のマシン語の時代からです。

C8 AF D5...などの16進数を電卓のようなキーボードに打ち込んで7セグ表示板に数字を出すだけでも楽しかったあの頃。

16進数を見るだけでどのCPUのどの命令コードかがわかってしまうくらいまでやり込みました(当時はまともなゲームソフトが無かったですから、マシン語を解読することもゲームでした)

時代は移り変わり、アセンブラが登場して驚愕し、Pascalという言語に触れて恐れおののき、C言語で唖然とし、C++言語に憧れを抱いていました。

プログラミング言語マニア+CPUマニアという青春を過ごしました。

CP/M vs MS-DOSというDOS戦争も目撃し、ビル・ゲイツが覇権を握る様を苦々しく思っていた青春時代。

なのに会社に入った時には

ハードウェア製作を希望

するんですね(笑)
当時のソフトウェアはまだまだ貧弱でハードウェアの付属物的な扱いでしたから、私もその感覚が抜けていませんでした。
あくまでもソフトウェアはハードウェアの従属物って感じで。
(ロボットが作りたかったんですよ)

もし当時、私がハードウェア部門に配属されていたら、今の私は無かったかもしれません。

神様のいたずらか運命かは分かりませんが、私はハードウェア部門から「要らない」と言われて、当時あまり重要視されていなかったソフトウェア部門に配属されます。

そこは今でいう

超絶ブラック部門

当時流行したCMで「24時間働けますかぁ〜」っていうフレーズがぴったりな部門でした。
もう、ソフトウェア製作は「脳みそで鉄骨を担ぐ」仕事って感じですね。
理屈も何もなくただただ力仕事でソフトウェアを生産しました。

その職場で始めて「脳みそ」を使う仕事がありました。

品質管理

です。

しかしですよ、人間が牛馬のように働いて、ソースコードのレビューもなく、テストも思いつきでやっているような職場で

え?何言ってるの?

って普通はなりますが、そこは上層部の考えることは違ってて

「このソフトウェアを製品として出荷して良いという根拠が何か欲しいな。お、そうだ。最近は品質管理とかいうやつをソフトウェアに適用する取り組みもあるそうだ。よし、やらせよう」

って感じだったみたいです。
しかし、担当が新人1年生っていう時点で察します。

今だったらもっと高度な知識や技術を持っていたと思いますが、当時はペーペーな上に、過労で身体が限界になっていたこともあり、まともな活動が出来ず、知識やスキルを得る体力も気力もありませんでした。

そんな状態なので、上層部の方達を納得させる報告が出来ない状況が長く続きました。
本当のこと(つまりソフトウェアはボロボロ)をレポートすれば

そんなに酷いはずがない。もっとちゃんと調査しろ!

と怒られるし、粉飾データを提出すれば

何故そう言い切れるんだ! もっとちゃんと説明しろ!

と迫られる。

四面楚歌で困りに困って、

それらしいデータをそれらしい理屈で、なおかつ上層部の人たちが「まともじゃん♪」って思うようなデータの見せ方

をすることに情熱を、、、あ、いや、起死回生を託しました。

それが

統計学

です。
特に難しいことはありません。

平均、最頻値、中央値、発生確率や収束率のような文言を並べ、
数値を方眼紙(当時はまだエクセルなんて存在しない)にプロットしてグラフにします。

大学の時にはあまり興味のなかった数字のマジック。
でも、想像以上に好評でした。

表をグラフにするだけで絶賛の嵐

です。

作為的にデータを選別して、グラフの目盛りを操作し、ゴンベルツカーブとかいう「得体の知れない」横文字を並べまくり。

あたかも数値が正しいことを物語っている

状況を作り出しました。
で、思いっきり

「かくかくしかじかで、だから”大丈夫”です」

と言い切る(笑)

あれから数十年。
さすがに今は統計学を使って人を騙そうとは思ってません。
時代は変わってそんなに簡単に騙される人も居なくなった・・・と思います。

以上が私が統計学の事を

おー、すげーじゃん

って思った最初の出来事でした。

実際、数値を分析すると、色々なことが見えてきます。
私はトレードの知識も少ないし、株・為替でがっつり儲けた経験もありません。(株は買ってから置きっ放し)
でも、ソフトウェアとは40年以上付き合ってきました。
今でも第一線で働いています。
そこに統計学も使う事で、新しい楽しみ方ができるようになってきたと思います。
株や為替をやられている方々なら「それ、インジケータって言わない?」と思われるかも知れません。
そう、そのものです。

データ志向な私の脳みそはこれを「統計学」と思っているだけです。
仕事や、今の趣味(bot作り)にでも。

閑話休題・・・。

最近は趣味にちょっとお金をかけても良いよね、って思い
作ったbotのイメージにあったイラストを絵師さんにお願いして描いてもらってます。

昨日デビューした新型bot「ヘカトンケイル」

このbotの実運用試験の成績が以下。

ある取引所のBTC-FX実績です。
1日で0.2BTC増えました。
もちろん、最初は徐行運転し、パラメータを調整した後での動きです。
「これならいけるよね?」ってなってから本運転したときのスタートダッシュ部分の推移グラフなので、今後このままの推移かどうかは不明。
(パラメータの組み合わせの数はおそらく天文学的な数値)

ヘカトンケイル(百腕巨人)の名前の通り、多数の腕をイメージさせる取引が特徴です。
羅針盤は統計学をイメージしています。

で、現在試行中の次のbotはさらに強化したbot「バーサーカー」

日本語だと「狂戦士」っていうんですかね。

ある条件になったら敵も味方も皆殺しにするまで戦いをやめない闘いの化身。
売りも買いも叩き潰す感じからイメージしました。

そんな殺伐(?)とした中でふんわり系の「big eater」

こんな愛されるキャラクターが似合うbotが出来たらいいなぁ。

今のbot製作を支えているフレームワーク「Puppeteer」

日本語だと「人形使い」というと思いますが、私は「傀儡師」と呼んでいます。

さて、次はどんなbotを作ろうか。

楽しいbotライフを!

ソフトウェア・エンジニアを40年以上やってます。 「Botを作りたいけど敷居が高い」と思われている方にも「わかる」「できる」を感じてもらえるように頑張ります。 よろしくお願い致します。