https://keichang.hatenadiary.jp/archive

0から始めるFX自動売買

(ほぼ)放ったらかしで月利3%を目指します。

EA運用の一つの形

これまで、かれこれ4年に渡ってEA運用を続けてきまして、確率と期待値の世界で勝負するこの世界は非常に厳しいなと日々実感しています。おそらく、今後もEA運用が楽になることはなさそうです。

はじめた当初は、放置しておけば毎年倍々ゲームで増えていくイメージでしたが、放置で期待できるのはせいぜい30%リターン程度でしょうか。リスクに対してなかなか割にあいません。

そんな苦労を重ねてきた私の今、たどり着いた一つの運用の形を書いておきます。

EAの負けパターン(運用者起因)

10人の運用者がいて、それぞれ全員に同じ「そこそこトレード頻度が高くて、なおかつ、実際に勝てるEA」を渡すとします。

仮にブローカー差がないとした場合、全員が勝てるはずなのですが、実際はそうはいきません。

普通に考えると、「自動売買」なので、同じ成績になるからにも関わらず、、です。

そこにはメンタルが関わっています。一番やりがちなのは、「最近勝ってるからロットを大きくする」→「大きく負けてロットを小さくする」→「また勝ち始めてロットを大きくする」ということを繰り返すパターンです。

実際のイメージとしては、はじめは様子見で0.1Lotスタートして、じっくり様子を見よう!ということで、半年間きっちり勝ったことを確認して1Lotにした瞬間にドカーンと半年分のすべての利益を持っていかれる、という具合です。そして、「やっぱり駄目だ。。。」と弱気になってまたロットを0.5くらいまで下げてしまう、、ということをやってしまいます。

これは、人間の心理として絶対やってしまうのです。正常性バイアスとも言われて、「これまで上手く行ったのだから、明日もうまくいく」と強く信じすぎてしまうのです。そして、負けて嫌になっちゃんですよね。この糞EAが!!と。。

この記事では、この問題の回避策のアイデアを書いておきます。1つ目は誰でもできる方法、2つ目は一部の人なら出来る方法です。

この問題を解決する方法を考えます。

①検証期間を短くする

投資は時間を味方につけてなんぼですから、検証期間が過剰に長過ぎると機会損失になります。

一方で、「バックテストを信じて始めから本番ロット(この場合1Lot)で運用する」というのは危険です。EAとブローカーの相性が悪かったり、バックテストでは勝ててもフォワードで負けるケースというのは多々あるからです。

そこで、1~3週間程度の期間に絞って「バックテストとフォワードテストの乖離分析」をするのが、誰にでもできる「検証期間を短くする」工夫です。

私が実際に過去検証していたエクセルの一部がこちらです。

f:id:keiji_kc:20211113143004p:plain

バックテストとフォワードで期間を合わせて同じ条件で比較します。このEAの場合はかなり似通った数字になっているので、バックテストを信じてもよさそうです。

※ここでは詳しく書きませんが、カーブフィッティングのチェックのために、開発者時バックテストの期間とは重複しない期間のバックテストとフォワードで分析するのが大切です。カーブフィッティング(過剰最適化)は、開発者に悪気なく起きることがあるので、◯◯さんが作ったから安心だ!と思わずに人とモノを切り離して冷静に分析をしましょう~。

ということで、このテストを突破すれば、最短1週間、安全を見るなら1ヶ月弱の検証期間で本来、自分が取りたいリスク分のロットを張ることができそうです。

ただ、これはめんどくさいです。これをやるためには、適宜EAごとにバックテストをして、データを整形して、フォワードと日付を揃えてエクセルに貼り付け、という作業が適宜発生します。私は3ヶ月くらい頑張りましたが、続きませんでした笑。。ただ、3ヶ月もやれば勘所がわかってくるので、その時の経験は今も生きてますが。

そして、次に提案するのは、めんどくさくない方法です。

但し、EAをはじめて少ししか時間が経っていない人や、手持ちEAが少ない、自分で開発できない、といった方には実現できないので、そういう方は諦めて地道なバックテストを続けていくしかありませんm( )m

② 1個のEAの影響度を極限まで小さくする

このやり方ができるかどうかはケースバイケースで、必ずしも利益を最大化できるわけではありませんが、メンタルにすごく優しいやり方です。

やり方はシンプルで、ポートフォリオにおける1つのEAの「影響度」を極力小さくするだけです。

私がこの方法で運用しているポートフォリオだと1つのEAの影響度は大きくても5%未満です。実際に最大で40個以上EAを運用して、ドローダウンやリカバリーファクターなどを加味して(適当に)ロットを振って、適宜EAを入れ替えして運用しています。

この運用では、たまにmyfxbookで成績をチェックして、ダメそうなEAがあったら一旦おやすみさせてデモに突っ込んで放置です。これを1~2ヶ月に1回くらいの頻度でやります。あまり高頻度でやっても意味がありません。期間が短すぎると、短期的な不調期に振り回されます。全てのEAが一気に不調期になる、ということは考えにくいので、1~2ヶ月に1回という頻度で十分なのです。(もちろん、各EAの相関関係はチェックする必要があります)

これがそのポートフォリオの一つです。2021年現在の成績です。

f:id:keiji_kc:20211113144630p:plain

だいたい、首にするのはざっくりした基準でOKです。2~3ヶ月くらい右肩下がりになったら、首にします。新しいEAはある程度強いものが見つかって、ポートフォリオと相性が良さそうならば、追加していきます(ポートフォリオ構築の手法は真面目に書くと長くなるので、省略しますが、とりあえず相関関係の小ささを意識します。)

このくらいゆったりした頻度だと、ストレスがないです。

このポートフォリオでは、今年、最大40個くらいのEAを動かして、今は30くらいだったと思います。なんでそんなにEA持ってるんだ!?と言われると、自分でコツコツ作ったのと、過去に買ったものや頂き物などなどです。

私は、EA開発と、EA運用は別の頭の使い方が必要だと思うのですが、運用の方はこれが本当に楽で安定します。

厳密にやるには、ドローダウンが最小化されるようなロットの組み合わせを計算する必要がありますが、この最適化問題は、一度、pythonでチャレンジしましたが、処理がおもすぎて断念しました。。ま、そこまで根をつめなくても、一つのEAの影響度を大きくしすぎなければ爆死する可能性はかなり低いと思います。

まとめ

手持ちEAが少ないと、2つ目の方法は難しいので、まずは1つ目の方法で頑張って分析しましょう!

手持ちEAがかなりある状態になれば、2つ目の適当分散ストラテジーもメンタルに優しく、結構おすすめです!!

今日は以上です。