損切りを動かさずに済んでいたら、結果は違ったんじゃないか。
10万円を79万円まで増やし、そのあと全額を失った僕には、そんな思いがありました。最初から何も考えずに取引していたわけではありません。ダウ理論やエリオット波動を勉強して、チャートの波を見て、入る場所も決めていました。
でも、お金が減り始めると、決めていたことを守れなくなります。ここで切るつもりだったのに、「もう少し待てば戻る」と損切りをずらす。利益が出れば、今度は減るのが怖くて早く決済する。それで最後に大きく負けました。
だったら、自分で注文しなければいい。売買の判断をプログラムに任せれば、怖くなって利確を早めたり、損失を認めたくなくて損切りを遠ざけたりせずに済みます。
そう考えて取り組んだのが、自分の裁量トレードをEAにすることでした。今回は、その中でもダウ理論とフィボナッチを使った初期の開発を振り返ります。
買う場所は説明できる。けれど、EAには伝わらない
ダウ理論では、高値と安値の切り上がりなどから相場の方向を考えます。フィボナッチは、直前の値動きに対して、どの程度押したかを見るために使っていました。
上昇している相場で、いったん下がったところを買い、次の上昇を狙う。チャートを見ながらなら説明できる考え方です。
実際、それを使って資金が増えた時期もありました。だから、自分の感情さえ入らなければ、同じような取引を繰り返せるんじゃないかと考えていました。
ところが、コードにしようとすると、すぐに困りました。
僕が一つの波として見ているところを、EAが同じように認識してくれません。途中の小さな上下まで拾ってしまうと、僕が考えていた押し目とは別の場所で注文することになります。
フィボナッチも、どの高値と安値を結ぶかが変われば、待つ場所が変わります。線を引く前の「この波を使う」という判断から、ルールにしなければいけませんでした。
何本前まで見るのか。どの高値を超えたら上昇とみなすのか。どこまで戻ったら押し目と呼ぶのか。
普段はチャートを見て済ませていたことを、一つずつ言葉と数値にする。EA開発で最初に苦戦したのは、ここでした。
感情をなくしたら、そのまま勝てるわけでもなかった
ChatGPTと条件を修正し、波の認識を調整して、ようやくバックテストまで進みました。
自分が実際に資金を増やした考え方です。ある程度は増えるだろうという期待がありました。でも、最初にEA化した結果は、思ったようには増えませんでした。
そこから、エントリー条件だけでなく、利確方法や資金管理、時間足も変えていきました。条件を厳しくすると、成績が良さそうに見える場合もあります。ところが今度は、取引の回数が減ってしまいます。
ここで困るのは、数字が良くなることと、自分のトレードを再現できることが、必ずしも一致しないことです。条件を変えるたびに、最初に作りたかったEAから離れていないかも確かめる必要がありました。
残っている34取引から、どこまで言えるか
初期DowBOS+FibPullbackのv0.41には、34取引の記録が残っています。再集計すると16勝、勝率は約47%。利益の合計を損失の合計で割ったPFは約1.68でした。
このファイルの範囲では、損失より利益が多かったことになります。全ての設定で負けた、という結果でもありません。
ただ、当時の口座通貨や全ての入力設定、テスター条件を、現在残っている資料だけでは一意に確定できません。34取引の集計を、この手法なら同じ成績を再現できるという説明には使えない状態です。
この初期版の本番採用は保留です。 利益が残った記録はありますが、検証条件の確認と、より多くの取引での比較が必要です。取引が少ない理由も、売買条件によるものか、検証期間や設定によるものかを確定してから評価したいところです。
EAを作る前に、自分の判断を説明する必要があった
僕がEAに期待したのは、怖さや欲でルールを変えずに取引してくれることでした。そのためには、守ってもらうルールを先に決めなくてはいけません。
今回つまずいたのは、「自分がいつも見ている波」を説明するところでした。頭の中では分かっているつもりでも、機械が同じ場所で売買できるほどには、決まっていなかった部分があります。
この段階で、勝てるEAが完成したとは言えません。それでも、自分のトレードのどこが曖昧だったかは見えてきました。
次は、ローソク足の形を条件にして試します。高値・安値や始値・終値から形を決めたら、同じ条件が出るたびに売買した結果はどうなるのか。#005では、その検証を振り返ります。
本文は初期DowBOS+FibPullbackの開発経緯と保存記録に基づきます。v0.41の数字は残存CSVの集計です。全実行条件が未確定のため、損益の円換算や口座の資金増加率は掲載していません。
