2010年10月20日

開発中のEA_RealDealについて

開発チームとしては自分でも当然運用したいEAを作っているわけですが、チーム内で出てくる他の方の新しいアイデアにはいつも驚くとともに感心しています。
さて、私がこの 「EA_RealDeal」 の製作にずっと関わってきて感じた「時間分散投資EA」の特徴を少し紹介したいと思います。

まずこのEAは
・短期〜中期トレンドをテクニカルから判断して、最小リスクで利益を狙っているということ。
・トレンド発生時のエントリから時間経過とともに期待できる利益が変化しますが、常にそれに合わせて、目標利益も変化させていること。
・両建てを含めて独特の損切り方法でDDを最小限に抑えていること。
・複数のシグナルが協調していて、お互いのメリット/デメリットを補完しあって安定志向としていること。

こういった特徴がありまして、個人的な感覚では今までにない考えのEAだと思っています。
よく見られる直近の相場に合わせてパラメータの最適化をしていかなければならないEAではなく、基本的に完全放置していてもコツコツと利益を重ねるロジックです。

このEAならば、誰が使ってもパッシブ運用の投資信託(インデックスファンド)的な長期にわたる安定した運用ができるはずです。
システムトレードの本来の目的は放置運用のはずなのに、EAのパラ設定のために休日はOptimizeを繰り返すなんて本末転倒で疲れてしまいますよね^^;

しかしながら、反対にアクティブな運用を考えていらっしゃる方にはDefaultの推奨安定設定ではパフォーマンス的には少々物足りなさを感じるかもしれません。
でも、是非このEAをMT4にアタッチして、ポートフォリオのひとつとして運用していただきたいです^^

あと、「EA_RealDeal」は現在の対応通貨はユロドルだけですが、別通貨ペアでのよいロジック・設定が見つかりましたら、是非複数通貨ペアを監視して稼動できるようにもしたいですね。
MT4のBTでは、他通貨ペアの取引ができませんから、そのときは
バーチャルポジションで検証となるのでしょうか・・・・^^; 

by<PG-H>
posted by projectv-japan at 00:00| Comment(0) | TrackBack(0) | EA開発

2010年10月19日

開発中EAの正式名称決定!

コードネーム「EA_Busy」の正式な名前が決定しました。

EA_RealDeal

意味は「本物」です^^
名前に恥じないEAでなければなりませんね!

by<PG-A>
タグ:MT4 EA 本物
posted by projectv-japan at 00:00| Comment(0) | TrackBack(0) | EA開発

2010年10月18日

バックテストと最適化

商用EAの販売ページには、必ずバックテストの結果が掲載されています。
未来のことは誰にもわからない、そうなると「過去の相場ではどんな成績なのか」が購入の重要な判断材料になってくるわけです。

当然私たち開発チームもバックテスト結果には徹底的にこだわっていますので、その結果は重要なファクターのひとつとして、常に意識しながらEA開発を進めています。

しかし、未来とは逆に過去の相場は誰でも知ることができて、その正確なデータは誰でも簡単に手に入れることができます。
と、いうことはシステムを過去データに強引にフィットさせた、「過去の相場で勝てるEA」を作ることも十分に可能であるということも知っておく必要があります。いわゆる「カーブフィッティング」といわれるものです。

「カーブフィッティング」・・EAをお使いの方であれば、誰でも知っている言葉ですよね^^;

過去にすら勝てないEAが未来に勝てる確率はほとんどないと思いますが、逆に過去に勝てたからといって未来も勝てるとは限りません。
過去データを元に過剰に最適化されたEAは、フォワードで惨敗するケースが多々あります。

すばらしいBT結果のEAを買って、ライブ運用したとたんにドローダウンしてしまった経験をお持ちの方も多いのではないでしょうか?

MetaTraderには、Optimize(最適化)という機能があり、これを使えば、最も成績のよいパラメータの組み合わせを自動で探してくれます。
これは大変便利な機能である反面、比較的簡単にカーブフィッティングできてしまうという怖さも持ち合わせています。また、初級者ほどその数値に振り回されてしまう傾向にあるようです。

私たちはこの時間分散EAの開発において数多くのバックテストを行っているわけですが、実はここまでOptimizeの作業は一度も行っておりません。

もちろん、Optimizeを否定しているわけではありません。
開発当初からプランどおりに作業が進んでいるため、Optimizeを行う必要がないのです。
例えば、テクニカルフィルタの期間や時間軸なども、実装前に想定した値のままで満足のいく結果が出せています。

これは、このEAの強みであると自負しています。
パラメータを最適化しなくても結果が出せるということは、「このロジックにはエッジ(優位性)がある」と言っていいと思われるからです。

今後、このEAもOptimizeを行っていけばさらによいBT結果が期待できるかもしれませんが、現段階で行う予定はありません。
開発の最終段階でロジックの再確認のためにOptimizeすることはあっても、その行為によってはじき出されたパラメータを推奨するのはカーブフィッティングの結果にすぎないと考えるからです。

開発中の時間分散投資EAは、完成まであと残すところ調整レベルのわずかなコード修正のみという状態です。
すでに数種類のセッティングでフォワードテストも開始しておりますので、そのStatementも同時に公開させていただきます。

by<PG-K>
posted by projectv-japan at 00:00| Comment(0) | TrackBack(0) | EA開発

2010年10月10日

もしもリスクを上げて運用したら?

昨日のナンピンEAの話題に触発されたわけではないですが^^;・・・

こちらで試算したバックテストにおける破綻ラインギリギリのハイリスクでBTをやってみました 。

v017_2007_HighRisk.gif

期間は2007年1月2日〜2010年9月、Deposit=$10000ですが、3年あまりで1億円を超えてしまいました!

しかし、いかに強固な精神力の持ち主といえど、この設定でのライブ取引はまず不可能だと思います・・・^^;
このEAには、こういうすごいポテンシャルもあるようですが、それよりも安定運用が最重要です。
さて、その安定運用を目指す「時間分散投資EA」も完成に近づいてきました。あらためて年単位のBTで確認しましたが、思惑通りの結果を出してくれています。
すべての年で最低でも年利10%以上は確保してますが、逆にどうしても損切りが必要な相場もあって平均年1回程度のDDがあるのがちょっと悔しいです。
しかし、相場の状況によってはしっかりと損切りするシステムですので、最低限のDDは想定した上での運用が必要です。
2010_2005.gif
by<PG-K>
posted by projectv-japan at 00:00| Comment(0) | TrackBack(0) | EA開発

2010年10月09日

新しいシグナル追加

全決済部分で、万一決済されない不測の事態が起こっても対処可能な機能を搭載しました。
また、ポジション管理機能の見直しも行いました。

メンバーの<PG-H>さんからシグナル追加の提案がありましたので、新たにシグナルGとして追加搭載しました。
このシグナルG、なかなか強力なロジックです。
他のシグナルと比べて発生回数は少ないものの、これを加えたことでPFは更に向上してDDのリカバリ回数も減ることがわかりました。

またひとつ、強力な武器を手に入れることができました^^

そして、新しくシグナルGを加えた場合の例の2005年末のDDを見てみました。
以前に比べるとかなり緩和されました!^^

ba84266273db55fceb7c98a1de82a5df1.gif

ということで、新たにシグナルG搭載バージョンでのフォワード開始です^^
ちなみに、このEAは瞬時の価格の動きでトレードするようなスキャルEAではないので、デモとリアルの約定の差やブローカー間の違いにさほど神経質になる必要もありません^^


追記:21:19

さらに、当初は他のシグナルに比べてあまりパフォーマンスの上がらなかったシグナルDも有効にして、A〜GのシグナルすべてをtrueにしてBTを行ったところ、なかなか満足のいく結果となりました。
ProfitもPFも上がりました!
ここ数日の大幅な機能拡張が、シグナルDのパフォーマンスを一緒に引き上げてくれた形です^^


v015_2007_SignalAll.gif

ところで、最近はナンピン系のEAが流行っているのでしょうか・・・。
某サイトで1年で数千%!!(開始資金の数十倍)なんてナンピンEAを見ました。・・・しかし、先日破綻したようです^^;

ナンピンEAでは、ナンピンのロット数を倍以上にすると割と簡単にキレイな直線グラフを作ることができますが、実際にDDが来てしまったら一気に破綻です。
私たちは、設計段階からDDの可能性を考慮し、万一DDが来ても対処できるようなEAの製作を目指してチーム一丸で取り組んできました。

無限ナンピンやマーチンゲールによる手法は直線でキレイですが、ある時突然牙をみせますから刺さったら即死です^^;
このEAは、リカバリの際も、マーチンゲールを使わず、ピラミッディングで柔らかに凌いでいきます^^

多ポジEAと聞くと、
多ポジEA → ナンピン、マーチン = 危険
というマイナスのイメージを持たれる方も多いと思いますが、このEAは、ナンピンでもマーチンでもありません。先日も書きましたように、「時間分散投資」を基盤として開発されています。
ここで、このEAの特徴がよく表れているトレード場面を例に挙げて説明します。


chart1.gif


この場面、最終的には勝ちトレードで終わってくれるのですが、

まず、上昇トレンドに乗ってロングしました・・・しかし、途中でトレンドが変わってしまい、最初のロングポジションは完全な天井掴みになってしまいました・・^^;
(トレンド追随型シグナルなので、たまにはこのようなこともあります^^;)

ナンピン・マーチンEAならば、この下降トレンド中にロットを増やしながらナンピンを繰り返していきます。

しかし、このEAはトレンドが変わったことを確認したら、ショートに切り替えてロングポジションのマイナスを相殺する戦略を取ります(ロット数は増やしません)。
この戦略がハマって、ロングの含み損は相殺され見事にプラスで決済されました^^

時間分散投資ロジックを採用しているため、一つ一つのポジションは小ロットなので、不利なポジションを有利なポジションで相殺することが十分に可能なのです。

でも・・それならば最初のロングポジションは途中で損切りしたほうがよいと思われるかもしれません。
しかし、逆に反転上昇の可能性も残しており、もしそうなった場合には最初のロングポジションは保有したままの方が後々有利になってきます。
ロットが大きければ損切りしか選択肢がない状況ですが、小ロットなので時間をかけてトレンドを見極めるゆとりがあります。

そして、残された可能性として、ロングポジとショートポジの間の価格帯でレンジ相場に入ってしまう状況が考えられます。
その場合には、基本的にはトレンドの発生を待つことになりますが、もし状況の改善が見込めないとなれば、ポジションの再編成やリカバリ機能が作動する手筈となっています^^

このように、様々な状況に対処できる非常に優れたロジックのEAであることがお解りいただけるかと思います。
トレンドフォローと両建て多ポジのいいとこ取りをしているEAです^^

by<PG-A>
posted by projectv-japan at 00:00| Comment(0) | TrackBack(0) | EA開発

2010年10月07日

売買ロジックほぼ完成

売買ロジックの部分は、ほぼ完成ということでよさそうです。

メンバーの<PG-K>さんが、大幅なコードの最適化を行いました。
素晴らしい!BTの速度が格段に向上しています。いつもながらよい仕事をされます^^v

ここで、最低運用開始資金の調査を行いました。Deposit=$5000です。
2007年1月からです。

v013_2007_Dep5000.gif


$10000開始に比べて、資金量が少ない分だけDD%が若干増えるのはやむを得ないところです。
しかし、この結果なら大丈夫!十分に運用可能ですね^^

最低資金4千〜5千ドル、推奨1万ドル以上という運用条件が適切な資金額となりそうです。

次に、ポジション数についてですが、こちらも満足のいく結果を出すことができました。
次のグラフは、2005〜2008年のものですが(Default)、ボラの小さい期間にもかかわらずトレード数は5千回以上ありますし、2009と2010年を加えれば、1万回近くになります。

v013_2005_2008_graph.gif

今週から行っているフォワードテストも順調に推移しています。
しかし、このグラフからもおわかりのように、2005年後半のDDは決して満足できる結果ではないので、データの詳細分析を行って更なる改善を施したいと思います。
by<PG-H>
posted by projectv-japan at 00:00| Comment(0) | TrackBack(0) | EA開発

2010年10月04日

ロジック修正

現在のポジション取りのロジックは6種類。
Use_Signal_A = true
Use_Signal_B = true
Use_Signal_C = true
Use_Signal_D = false
Use_Signal_E = true
Use_Signal_F = true

これらのエントリシグナルを、それぞれtrue/falseで選択します。
ロジックは、エッジのある値動きパターンや、複数のテクニカルを駆使した手堅いものなどを用意し、検証の結果この6種類を採用することにしました。

ポジ取りに両建てやナンピンという概念はなく、あくまでも分散投資の概念でポジション取りを行います。
余談ですが、以前から興味のあった通貨相関フィルタを組み込んでみたのですが、あまり機能しなかったので、デフォルトはfalseです。
→結局、実装は見送りとなりました^^;

リカバリ機能(RecoveryMode)も大幅に機能アップさせました。
EAがポジション整理を行った方がよいと判断したら、一部のマイナスポジションを決済し、ロット数を調整した適切な新規ポジションを建てるようにしました。

含み損を抱えたポジションを、利益が出ているポジション全体で相殺するという手法も試してみましたが、このロジックは有効に機能せず不採用としました。

しかし、このような一歩も二歩も踏み込んだアイデアが出てくるのはチームで開発している最大の利点だと思います^^
結果、PFは上がり、2010年においてはPF=2.42まで伸びています。

v013_20071.gif

v013_20101.gif

by<PG-A>
posted by projectv-japan at 00:00| Comment(0) | TrackBack(0) | EA開発