バイナリーオプションくえすと

このブログは、いつか「はいぱーバイナリトレーダー」になる事を夢見て、ハイローオーストラリアというダンジョンを冒険した記録です。

自動化の先にあったVPSについて

Japanese all-rounder

前回もざっとこれまでの下記経緯を書かせていただきましたが、

念のためおさらいで書かせていただきます。

 

■以下2018年9月⇒2021年9月の3年間の経緯です。

 

 ①Youtubeや商材で聖杯を探しながら1分ターボ取引を開始

 ②バックテストをするようになり、

  同じロジックでも1分よりも5分の方が勝率が良い事に気が付く

 ③5分だと、1日のチャンスが少なくメンタルがやられる

 ④チャートに張り付かなくてもいいように自動化を作ってみる

 ⑤BoAnalyzerでロジックのバックテストを分析し、ロジックに制御をかける

 

今回は「④チャートに張り付かなくてもいいように自動化を作ってみる」

そこで辿りついた結論について書かせていただきます。

 

結論「VPSありでした

 

といった結論です。

 

メリットは下記の通りです。

・24時間ネット回線に悩まされることがない(安定してる)

・パソコンのファンの音に悩まされない

・常時稼働していても何も問題がない

・外出先からリモートデスクトップスマホから確認/操作ができる

 

私がVPSにした理由は、同居人からの苦情です。

・夜中も昼間もずっとつけっぱなしで、まあまあCPUを使用するので、

 パソコンがうるさい(MacBookPro 2018の16GBモデルです)

・ネット回線が安定しない事がある

・電気代が・・・と責められる

 

そこでいろいろ検索した結果、VPSの4GBを契約しました。

 

1ヵ月3000円程度と決して安くはないのですが、

大満足しています。

 

特にスマホで外出先から確認できるのは大きいです。

 

なぜ4GBにしなければいけなかったのかは、

次回自動化の詳細で書かせていただきます。

 

↓現状はこのような形で、6通貨を監視/運用しております。

f:id:ice_candy_rock:20210921220028p:plain

※ハイローの画面も6通貨に合わせて、6画面(Edge)立ち上げています。

 

 

 

カーブフィッテングの罠

Japanese all-rounder

ご無沙汰しております。

 

前回の更新からだいぶ経ちましたが、

バイナリは続けておりました。

 

 

唐突ですが。

今回は私が陥った罠「カーブフィッテング」について

お話しさせていただければと思います。

 

 

今までの経緯をざっとご説明します。(2018年9月⇒2021年9月)

 ①Youtubeや商材で聖杯を探しながら1分ターボ取引を開始

 ②バックテストをするようになり、

  同じロジックでも1分よりも5分の方が勝率が良い事に気が付く

 ③5分だと、1日のチャンスが少なくメンタルがやられる

 ④チャートに張り付かなくてもいいように自動化を作ってみる

 ⑤BoAnalyzerでロジックのバックテストを分析し、

  ロジックに制御をかける ← ※ここ重要

 

自動化の現状はまた別途詳しく書かせていただきますが、

約定拒否率なども減り、満足いく自動化はできました。

 

ただし・・・。

 

自動化で使用しているロジックに時間帯別に制御をかけてしまった事

(ロジック制御)が今回の反省点となります。

 

 

例えば。

ロジックを制御した結果。

このような結果になっていました。

 

■2018/01/01-2020/12/31(3年間の検証)

勝率:62.6%(348/556本)

f:id:ice_candy_rock:20210918111148p:plain

 

一見優秀なロジックのように見えるのですが。

f:id:ice_candy_rock:20210918111501p:plain

このように勝率が高い時間のみエントリーをするように

ロジックに制御を加えていました。

 

 

 

その為。

下記のように直近半年で検証すると

■2021/01/01-2021/06/30

勝率:58.1%(36/62)

f:id:ice_candy_rock:20210918111735p:plain


このように勝率が下がってしまう。

(このAUD/JPYはまだ損益分岐点54%を超えているのでよい方)

 

これが「カーブフィッテング!

 

前から噂は聞いていましたが・・・。

まさか自分が陥るとは。

 

他にもAUD/NZDなど

勝率64%が・・・

f:id:ice_candy_rock:20210918112053p:plain

 

55%に・・・。

f:id:ice_candy_rock:20210918112133p:plain

 

なるほど。

そりゃいくら自動化できても、

使ってるロジックがダメならお金なくなります。

 

5月調子が良かっただけに、気が付くのに時間がかかってしまいました。

 

というわけで新たなロジックを探す旅が始まりました。

 

 

BO攻略作戦⑥ BO自動化結果 5月31日~7月7日まで

Japanese all-rounder

前回5月31日の21時までの結果を掲載しましたので、

今回はその続きを掲載します。

 

5月31日21時~7月7日までの結果です。

 

以下取引結果になりますが、

結果としては、ボロ負けです。

 

エントリー数:187

勝ち:92

負け:95

 

勝率:49.20%

金額:133,000円

 

5月に1ヵ月運用して、それなりに結果が出ていたので、

油断していました。

 

そんなにバイナリの世界はあまくないって事ですね。

 

また、ロジックに磨きをかけて出直してきます。

 

↓以下エビデンスとして、取引の明細です。

f:id:ice_candy_rock:20210717104247p:plain

f:id:ice_candy_rock:20210717104429p:plain

f:id:ice_candy_rock:20210717104457p:plain

f:id:ice_candy_rock:20210717104538p:plain

f:id:ice_candy_rock:20210717104555p:plain

f:id:ice_candy_rock:20210717104611p:plain

f:id:ice_candy_rock:20210717104625p:plain

f:id:ice_candy_rock:20210717104638p:plain

f:id:ice_candy_rock:20210717104650p:plain

f:id:ice_candy_rock:20210717104706p:plain

f:id:ice_candy_rock:20210717104718p:plain

f:id:ice_candy_rock:20210717104730p:plain

f:id:ice_candy_rock:20210717104744p:plain

 

BO攻略作戦⑤ BO自動化結果 5月6日~5月31日まで

Japanese all-rounder

5月5日に一旦完成して、5月6日、5月7日の結果まで

載せましたが、その後どうなったのか、

結果を共有させていただきます。

 

■5月6日~5月31日 21時現在まで

f:id:ice_candy_rock:20210531212922p:plain

f:id:ice_candy_rock:20210531212934p:plain

f:id:ice_candy_rock:20210531212939p:plain

f:id:ice_candy_rock:20210531212944p:plain

f:id:ice_candy_rock:20210531212947p:plain

f:id:ice_candy_rock:20210531212953p:plain

f:id:ice_candy_rock:20210531212955p:plain

f:id:ice_candy_rock:20210531212959p:plain

f:id:ice_candy_rock:20210531213004p:plain

f:id:ice_candy_rock:20210531213006p:plain

結果をまとめると、下記の通りでした。

 

総エントリー数:144

勝ち:93

負け:51

 

勝率:64.58%

 

エントリー金額は途中で変えてしまっているので、

微妙ですが、

 

トータル収支:130、900円

 

営業日数は18日で、144回のエントリーなので、

1日あたり、平均8回のエントリーでした。

 

なんとなくですが、バックテストの検証結果に近い気がいたします。

 

また、1日8回のためにチャートにはりついている

というのは現実無理なので、自動化はある意味正解だったのではと思います。

 

自動の範囲はだいたい朝は8時~翌朝5時59分までとしています。

 

みなさまの参考になればと、今後も結果をご報告していければと思います

 

BO攻略作戦④ BO自動化

Japanese all-rounder

前回日本時間のヒストリカルデータ準備まで

お話ししました。

 

ここまで準備ができたので、各ロジックを

BOAnalayzerで検証します。

 

例えば、「ボリンジャーバンド3σ+RSI9の70-30」の

何気ないロジックですが、1分だと勝率が悪すぎ、

5分の方が勝率が高いですが、

いかんせん1通貨1日1回ぐらいしかチャンスがない・・・。

 

この為にずっとMT4に張り付いていると

頭がおかしくなって、変なのいったり、

待ってたやつ負けたりして、追撃マーチンしてオワコン。

 

なので、メンタルに影響しないよう自動にまかせる。

 

といったのが開発に至った経緯です。

 

少し話がそれてしまいましたが、

話を戻して、BOAnalyzerで検証した例

 

ボリンジャーバンド3σ+RSI9の70-30の検証結果

NO 通貨 制御 エントリー数 勝数 負数 勝率 最大連勝 最大連敗 PF 最大DD 総損益
1 AUDJPY 1,659 936 723 56.4% 12 14 1.1004 -249,000 726,000
    561 355 206 63.3% 9 6 1.4648 -83,000 957,500
2 AUDNZD 1,277 756 521 59.2% 12 10 1.2334 -254,000 1,216,000
    803 515 288 64.1% 15 8 1.5200 -141,500 1,497,500
3 AUDUSD 1,503 833 670 55.4% 14 7 1.0568 -271,500 380,500
    442 280 162 63.3% 12 5 1.4691 -100,500 760,000
4 CADJPY 1,518 835 683 55.0% 13 11 1.0392 -317,000 267,500
    563 355 208 63.1% 13 6 1.4507 -80,500 937,500
5 CHFJPY 1,466 855 611 58.3% 13 7 1.1894 -125,000 1,157,500
    781 502 279 64.3% 9 4 1.5294 -89,000 1,477,000
6 EURAUD 1,334 770 564 57.7% 11 10 1.1605 -207,000 905,000
    593 386 207 65.1% 10 5 1.5850 -73,000 1,211,000
7 EURGBP 1,690 966 724 57.2% 11 9 1.1341 -208,500 971,000
    596 390 206 65.4% 20 5 1.6092 -82,500 1,255,000
8 EURJPY 1,669 935 734 56.0% 14 10 1.0828 -376,000 607,500
    615 387 228 62.9% 12 6 1.4428 -211,000 1,009,500
9 EURUSD 1,635 926 709 56.6% 11 7 1.1102 -319,500 781,000
    584 365 219 62.5% 13 9 1.4167 -118,500 912,500
10 GBPJPY 1,749 1,021 728 58.4% 11 7 1.1921 -308,000 1,398,500
    596 391 205 65.6% 13 4 1.6212 -114,500 1,273,500
11 GBPUSD 1,810 1,001 809 55.3% 12 8 1.0517 -352,000 418,500
    400 247 153 61.8% 9 7 1.3722 -156,500 569,500
12 NZDUSD 1,495 788 707 52.7% 8 7 0.9474 -544,000 -372,000
    219 137 82 62.6% 11 4 1.4201 -71,500 344,500
13 USDCAD 1,412 726 686 51.4% 15 7 0.8996 -734,000 -689,000
    238 149 89 62.6% 9 4 1.4230 -56,000 376,500
14 USDCHF 1,680 929 751 55.3% 10 8 1.0515 -323,500 386,500
    596 375 221 62.9% 10 5 1.4423 -91,000 977,500
15 USDJPY 1,818 1,025 793 56.4% 10 9 1.0987 -245,000 782,500
    627 407 220 64.9% 16 8 1.5725 -100,500 1,259,500

 

前・・・24時間全ての時間エントリー

後・・・勝率の高い時間のみエントリー

 

基本的に勝率62%を超える時間のみに絞ります。

■USD/ JPY 制御前 56.4%

f:id:ice_candy_rock:20210508155654p:plain

 

■USD/JPY 制御後 64.9%

f:id:ice_candy_rock:20210508161851p:plain

 

 

こんな感じです。

これをMQL4で勝てる時間のみサインを表示して、

勝てない時間はサインを表示しないように制御します。

 

 MQL4ではこれでローカルの時間を取得できます。

 

TimeLocal()

 

これで、勝率の悪い時間の場合はサインを表示しない制御をします。

 

■上のUSD/JPYの場合

 

if(TimeHour(TimeLocal()) == 2)

 

2時の場合は、という判断が可能になります。

 

 

 

BO攻略作戦③ ヒストリカルデータ準備

Japanese all-rounder

またまたしばらく更新が滞ってしまいましたが、

自動化がなんとか完成しました。

 

こんなに熱中して、3年以上も分析、

勉強、改良を重ねたのは人生初です。

(まあ、2年以上は商材買いあさりましたが・・・) 

 

毎日毎日MT4とにらめっこです。

こんなに長い時間かじりつくのができたのは、

やはりどこかで好きだからですかね。

 

トータル400以上HP削られてもなお

没頭している。

 

よく言えば熱量あるし、悪く言えば依存症です。

 

この熱量を学業に生かしていれば、

もっと違った人生だったかも・・・

 

それはさておき。

 

↓こんなExe(試行錯誤の結果ver1.7まであがりました)

f:id:ice_candy_rock:20210508082457p:plain


機能は単純で、下記4機能のシンプルなものです。

①エントリー金額を自分で入力して、決められる

 (ここに入れておいた金額がハイローでエントリーされる)

 

②自動監視機能

 (監視中は↓↓↓のようになる)

f:id:ice_candy_rock:20210508082641p:plain

 

③自動監視中断機能 ←機能は実現しましたが、まだ使用した事はないですw

 (経済指標や、ローソクの動きを見てエントリーしたくない時↓↓↓)

f:id:ice_candy_rock:20210508082839p:plain

 

④アプリが終了時刻になると終了する

 

このようなシンプルなものになります。

 

ここに至るまでいろいろと紆余曲折がありましたので、

私がはまった沼を書き、皆様のお役に立てればと思います。

 

5月5日夜に完成し、今のところ5月6日、5月7日の

2日間の運用ですが、結論こわいぐらい調子いいです。

 

1万円スタートで2000円エントリーで始めました。

 

↓5月6日運用結果(8勝3敗 勝率72% +7,600円)

f:id:ice_candy_rock:20210508084146p:plain


↓5月7日運用結果(10勝1敗 勝率90% +15,850円)

f:id:ice_candy_rock:20210508084339p:plain

 

なんかこんな勝率見てしまうと、

Youtuberのくそ商材うりつける輩と同じに見えてしまいますが、

どこかで勝率が収束しない事を祈ります。

 

 

■自動化Exeの概要

プログラム言語:VB.net + Selenium

 

もともとメルカリの自動エントリープログラムをvb.net+Selenium

作成していた事を思い出し、改良した感じです。

 

ここで今更ですが、もっと早くプログラムでバックテストすべきでした。

 

バックテストが大事!

これは皆さん口酸っぱくいうのですが、

それを手で1個1個線を引いて勝った、負けたを

やっていました。

 

手でやるとまあ1年やると大変です。

しかもこのパラメータを変えるとどうだろう?

みたいな場合は初めからやり直しです。

 

3年前の自分にMQL4で検証できるようになれ!!!

と言いたいです。

 

 【はまった沼】①過去検証の時間帯について

 

<ポイント>

 BOAnalyzerはサマータイムを考慮して、

 日本時間に変換してくれる便利な機能があるのですが、

 サマータイムを意識してエントリー時間を考慮すると

 ロジックが難しくなってしまう。

f:id:ice_candy_rock:20210508104855p:plain

 

 

過去検証は下記のように実施しました。

1.FXDDのヒストリカルデータをダウンロード

  

www.fxddtrading.com

 

ここでポイントは、ハイローオーストラリアの5分取引の通貨ペアは、

17通貨ありますが、FXDDのヒストリカルデータと一致するのは、

15通貨です。

 

その為、今回は検証可能は15通貨を自動化の対象としました。

 

2.ここでポイントなのが、FXDDのヒストリカルデータは

  日本時間ではない!ということです。

  

FXDDヒストリカルデータの時間軸について | 川蝉のFX自動売買

 

こちらの方は詳しく記載してくださっていましたが、

サマータイムによってGMT+3、GMT+2との事。

 

そのため、日本時間に変換してからヒストリカルデータを

ストラテジーテスターに取り込むことにしました。

 

そこでこのお方が作成されたスクリプトで変換!

nya0nekonote.blog.fc2.com

 

いやーほんと世の中には天才の方いらっしゃいますね。

感謝感謝です。しかもFXDDのヒストリカルデータで

一部おかしいGMTも考慮されている。

 

ありがとうございます●Ω

 

3.あとはストラテジーテスターに取り込み後、

  全ての時間足に変換

 

↓こちらの方が詳しく書いてくださっていました。

minagachi.com

 

period converter ALLというスクリプトで5分~週足まで作成可能です。

 

これで、BOAnalyzerの便利機能を使用せずとも、

検証した結果は全て日本時間での勝率。

 

こうすることで、BOAnalyzerで時間別に制御しても、

日本時間(パソコンのローカル時間)でエントリーが可能になります。

 

長くなってしまったので、次回、

プログラムのポイントを解説したいと思います。

 

BO攻略作戦② BOAnalyzerによる時間帯制御

Japanese all-rounder

またまたしばらく更新が途絶えてしまいました。

 

先日の課題に対して、いろいろと試行錯誤しておりました。

 

【今までで分かった事(課題)の棚卸】

1.同じロジック(手法)でも市場により勝率が全く異なる

2.勝率の表示期間が短すぎる(現状は直近1ヵ月分の表示)

3.同じロジック(手法)でも通貨により勝率が全く異なる

4.勝率が高いロジックはエントリー数が少ない(当然・・・)

  そして見事にチャンスを待つ間にHPが削られる⇒メンタル崩壊

 

1と2については6個のロジックを直近3年検証してみました。

 

結論から言うと、自動化したバイナリにつっこんで死にました。

(自動化の方法については、別途細かく解説したいと思います)

 

6個のロジックを直近3年間検証し、

勝率の悪い時間帯を外して制御した結果です。

 

■USD/JPY

検証期間:2018/01/01~2020/12/31

NO   エントリー数 勝数 負数 勝率 最大連勝 最大連敗 PF 最大DD 総損益
1 4,394 2,412 1,982 54.9% 10 12 1.0344 -582,500 682,000
  2,254 1,310 944 58.1% 15 8 1.1796 -178,000 1,695,000
2 2,323 1,297 1,026 55.8% 13 10 1.0745 -339,500 764,500
  1,467 875 592 59.6% 12 7 1.2563 -133,500 1,517,500
3 3,935 2,174 1,761 55.2% 14 8 1.0493 -360,500 869,000
  2,703 1,554 1,149 57.5% 13 9 1.1496 -184,500 1,719,000
4 1,318 788 530 59.8% 11 9 1.2638 -128,500 1,398,000
  1,020 642 378 62.9% 14 10 1.4437 -117,500 1,677,000
5 10,457 5,636 4,821 53.9% 18 12 0.9937 -1,468,000 -304,000
  5,275 2,979 2,296 56.5% 11 9 1.1029 -336,000 2,361,500
6 18,825 9,970 8,855 53.0% 19 12 0.9570 -4,666,500 -3,805,000
  3,690 2,090 1,600 56.6% 11 8 1.1103 -222,000 1,765,000

 

全てのロジックで損益分岐点を超えて、

いい感じに。

 

勝率だけを追い求めていましたが、一番総損益を出しているロジックは、

エントリー回数の多いNo5という点が驚きました。

 

勝率が62.9%のNo4よりも56.5%の方が総損益が高い。

 

というわけでさっそく本番へGo!

 

f:id:ice_candy_rock:20210424170643p:plain

 

いきなり5連勝です。

 

この時ばかりは「とうとうやっちまった。」

「世界ひっくり返せるようなものつくった」

自画自賛でした。

 

でもまあそんなにあまくないですね。

f:id:ice_candy_rock:20210424170959p:plain

結果6連勝からの3連敗、1勝して、その後に4連敗。

確率がどんどん収束していきます。

 

そこで、勝率の高いNo4のロジックのみに絞り、

通貨ペアを増やす作戦に。

 

当然各通貨ペアでのNo4ロジックを

時間帯制御。

f:id:ice_candy_rock:20210424171310p:plain

 

たしかに自動化できたので、チャートにずっとはりついてないといけない。

せっかく来たチャンスに負ける⇒メンタル崩壊。

よく分からないやつにノリでエントリー。

 

みたいな事はなくなりました。

それだけでも成長ですかね。

 

自動化にはまだまだ課題山積みですが、

どんな感じでつくってみたか、

次回ご説明しようと思います。