9月27日〜10月3日の週。週間の実現損益(決済して確定した損益)は-24,162円でした。9月は+97,323円(+15.0%)で締まり、水曜には累積の最高値も更新しています。ところが月が替わった木曜の1日だけで-44,813円。8月に始めてから最悪の1日を、2週続けて更新しました。さらに、EAの1本に「同じ注文を2回出す」バグが残っていたことも分かりました。順番に書きます。
数字のまとめ
- 9月の実現損益(確定):+97,323円(+15.0%)。9月1日の残高647,055円に対する割合です
- 10月の実現損益(1日〜2日):-40,981円。10月1日の残高は約744,400円(決済分のみの概算)なので、2日で約-5.5%
- 現在の残高:約703,400円(概算。スワップ=建玉を持ち越すと付く金利調整は未反映)
- 8/1からの累積実現損益:+68,995円(9/30の最高値+109,976円から約4.1万円の後退)
- 月利換算は、10月がまだ2営業日なので今週は出しません。来週から10月1日の残高を分母にして再開します

先週「9月の利益は月の前半の貯金でできている」と書きました。最後の3日で+16,819円を足して+15.0%まで伸びたのは素直にうれしい数字です。ただ、その翌日に9月の利益の半分近くを1日で返しているので、月をまたいで見ると印象はだいぶ変わります。
EA別の成績(実現ベース)
| EA | 今週 | 9月(確定) | 10月(2日まで) |
|---|---|---|---|
| SmaFlip AUDJPY | +23,971円 | +69,228円 | -19,602円 |
| SmaFlip USDJPY | +17,320円 | +15,307円 | +10,776円 |
| SmaFlipMTF GBPUSD | +3,085円 | -573円 | 0円 |
| SmaFlip EURUSD | 0円 | +15,431円 | 0円 |
| BB_TrendDoten USDJPY | 0円 | +2,015円 | 0円 |
| SpikeRider USDJPY | 0円 | -3,795円 | 0円 |
| SmaFlip GBPUSD(9/28凍結) | -3,080円 | -34,456円 | — |
| RegimeSwitch USDJPY | -3,840円 | -7,302円 | -7,353円 |
| RegimeTrend USDJPY | -6,210円 | +14,958円 | -6,210円 |
| EmaVol USDJPY | -10,853円 | -11,295円 | 0円 |
| CrashFlip USDJPY(9/28稼働) | -13,496円 | -13,496円 | 0円 |
| SessionRevert(2戦略合算) | -15,171円 | +32,186円 | -2,704円 |
| SmaFlipMTF USDJPY | -15,888円 | +29,115円 | -15,888円 |
今週プラスだったのは3本だけです。稼ぎ頭の SmaFlip AUDJPY と SmaFlip USDJPY の2本で+41,291円、マイナスだった7本の合計は-68,538円。9月の確定値では、13行のうちプラスが7本、マイナスが6本でした。なお、EAごとの振り分けは注文のロット・損切り位置・建玉番号からの逆算で、EmaVol と SmaFlipMTF USDJPY の分は発注の形からの推定です。
今週の主なできごと
月曜(9/28)、CrashFlip の初日に本物の急落が来た。先週の第16話で載せると書いた CrashFlip(ふだんは買いを持ち、急落を検知したら売りに切り替えるEA)を、凍結した SmaFlip GBPUSD の代わりに動かし始めました。その日の17時過ぎ、ドル円が90分で110pips(1.1円)下げて検知が発動。持っていた買い2本を-5,756円で手仕舞い、156.50円で売り0.10ロットを建てました。ところがそこがほぼ底で、6時間後に損切り(-7,740円)。初日で-13,496円です。同じ急落で SmaFlip AUDJPY の売りは+24,855円を確定しているので、口座全体ではプラスの日でしたが、「急落を稼ぎどころにする」はずのEAが、急落の底で売って負けた、というのが初日の結果でした。
同じ月曜の昼、凍結したはずのポンドがもう一度建ちかけた。SmaFlip GBPUSD の買い0.16ロットを手動で決済し(-3,080円)、EAを外して新しいプロファイル(チャートの組み合わせ)を保存しました。その切り替えの途中で、ポンド入りの古いプロファイルが10秒ほど読み込まれ、SmaFlip GBPUSD が買い0.11ロットを出そうとした記録がログに残っています。助かったのは、プロファイル切り替えでMT5が「アルゴリズム取引」ボタンを一時的にOFFにしていたから。これまで何度も事故のもとになった仕様に、今回は救われました。古いプロファイルは消しておきます。
水曜(9/30)、EmaVol が同じ買いを2本出した。深夜0時ちょうどに、買い0.07ロットが同じ損切り位置で2本、0.068秒差で建ちました。両方とも損切りにかかって-10,853円。1回の損失を資金の1%に抑える設定のEAが、実質2%を賭けていたことになります。原因は下に書きます。この日は SmaFlip AUDJPY がもう一度+19,950円を取り、累積は+109,976円で最高値を更新しました。
木曜(10/1)、1日で-44,813円。ドル円は朝から158.2円まで上げ、夜23時半に45分で80pips落ちる往復でした。月曜の夜から売りを持っていた SmaFlipMTF USDJPY が朝の上げで損切り(-15,888円)。SmaFlip AUDJPY は午後に売りから買いへドテン(反対売買)して-19,602円。夜の急落では RegimeSwitch の買いが損切り(-7,353円)、RegimeTrend は急落ガード(短時間に大きく下げたら買いを手仕舞って止める安全弁)で買いを決済して-6,210円、SessionRevert も-2,704円。プラスは SmaFlip USDJPY の半分利確+6,944円だけです。上げで売りが切られ、下げで買いが切られる、いちばん苦手な形の1日でした。
EmaVol の二重発注は、プログラムの順番の問題だった
ソースを読み直して原因が分かりました。EmaVol は新しい足ができた瞬間にシグナルを判定して発注し、その直後に「建玉がなければ建て直す」という見回りをもう一度走らせる作りになっています。見回りは「自分の建玉がもうあるか」を確認してから動くのですが、MT5は発注が通った直後、建玉の一覧に反映されるまでに数十ミリ秒かかることがあります。そのすき間に見回りが走ると「まだ建玉がない」と判断して、もう1本出してしまう。
9月10日にも同じ2本同時発注が起きていました。当時は「30分足のチャートで動いていたせい」と結論して修正したのですが、原因は別にあったわけです。毎回起きるのではなくタイミング次第で、過去の値動きで試す検証(バックテスト)では建玉が即座に反映されるため再現しません。検証では絶対に見つからない種類のバグでした。
修正版(v1.03)は作成済みです。発注が通ったあと5秒間は建玉が見えなくても出し直さないようにし、保険として、同じEAの建玉が2本あれば古い1本を残して決済するようにしました。売買の判断そのものは変えていません。差し替えは週明け前に行います。ほかのEAも同じ目で点検したところ、CrashFlip にも似た作りがあり(実害はまだ出ていません)、同じ手当てを検討します。
気になったこと(来週の宿題)
- ドル円への集中が、悪い日に全部同時に出る。12本のうち9本がドル円です。木曜はそのうち4本とAUDJPYが同じ日に負けました。しかも先週末に、成績の良い3本(SessionRevert、SmaFlipMTF USDJPY、SmaFlip AUDJPY)のロットを上げたばかりで、その3本の負けは上げる前の約1.5倍になっています。ロットは「変えたら4週間は動かさない」と決めたので触りませんが、12本を合わせた最悪の下げ幅をまだ一度も検証していないのは、もう先送りできません。
- EmaVol の差し替えと、CrashFlip の同種の点検。上に書いたとおりです。
- SmaFlip AUDJPY の「回転」がまた2回。トレール(利益を守りながら追いかける決済)で利確した直後に同じ方向へ入り直し、月曜は-2,508円、水曜は-242円。9月4日から言い続けている、決済後の待ち時間がない問題です。稼ぎ頭なので後回しにしてきましたが、荒れた週ほど出ます。
- SessionRevert の売りが続けて切られた。今週4回で1勝3敗、-15,171円。その日の下げについていく夜の売りが、月曜・火曜と2日続けて戻りで損切りになりました。9月は+32,186円のEAなので、1週間で設定は変えず、来週も同じ形が出るかを見ます。
- 古いプロファイルの削除。凍結したEAが入ったままのプロファイルは、読み込んだ瞬間に凍結が解けます。今回は偶然助かっただけでした。
ワースト3:成績が悪い、または今後も利益を出しにくいEA
今回は確定した9月の実現損益の順に、機械的に出します。
1位:SmaFlip GBPUSD(3週連続・凍結済み)
9月-34,456円。月曜に建玉を決済して外しました。これで順位表からは卒業です。このEAを除いた合計は9月+131,779円でした。
2位:CrashFlip USDJPY
稼働初日に-13,496円。急落を検知して売った場所がほぼ底でした。検証でも「売りは勝ったり負けたりで、数回の大きな急落で稼ぐ」形だったので、1回で判断はしません。第16話で決めた撤退の目安(6週間マイナスかつPF0.8未満、または下げ幅12%)にはまだ届いていません。PF(プロフィットファクター)は総利益÷総損失で、1を超えれば勝ち越しです。
3位:EmaVol USDJPY
9月-11,295円。そのうち-10,853円が今週の二重発注の分です。バグがなければ損失は半分で済んでいました。修正版に差し替えたうえで、ロジックそのものの評価は取引数がたまってからにします。
次点は RegimeSwitch USDJPY(9月-7,302円、10月も-7,353円)。月曜の朝に+11,037円を取って初勝利でしたが、その後2連敗。ここまで6回で1勝5敗です。
今週のまとめ
- 週間実現 -24,162円。9月は+97,323円(+15.0%)で確定、10月は2日で-40,981円
- 累積は9/30に+109,976円で最高値、現在+68,995円
- 10/1は1日で-44,813円。ドル円の4本とAUDJPYが同じ日に負けた
- EmaVol に二重発注のバグ。修正版v1.03を作成、差し替え予定
- ワースト3:SmaFlip GBPUSD(凍結済み)、CrashFlip、EmaVol
最高値を更新した翌日に、最悪の1日が来る。先週とまったく同じ書き出しになってしまいました。違うのは、先週の最悪はルールを破って抱えたポンドのせいだったのに対し、今週はルールどおりに動いた結果だという点です。つまり、いまの12本は「ドル円が往復した日には、まとめて負ける」構成になっている。ロットをいじる前に、まずそこを数字で確かめます。
コメントを残す