バックテストではわからない

フォワードテストで気づいてしまった。自作インジケーターは嘘をつくということ。なんと最後の矢印の位置をチャートが進むにつれて都合よく変えてしまうのです。見えないバグが本当のバグなんだと改めて思い知ることになった。

ロジック的にはUpとDownの矢印が交互に出るように書いたつもりが同じ向きが2連続して出て再読込をすると1つ目が消えているという症状。バックテストでは気づかなかったが後から見るとそれらしく見えるのです。それらしく見えるインジケーターはそれらしく見えるだけでEA化は無理だと分かる。見えないバグがなくなるまで修正しなければならないことになりました。

追記:頭を冷やして考えるとバグではない。インジケーターが示すことが出来るのは「先のことは分からないけど現時点ではこうです。」なので理屈から言えば当然の結果なのです。魔法のように見える手品には種がある。バグなら修正できますがバグでないなら修正できないです。学習機能なしインジケーターの限界なのだと思います。

MQL4 Tutorialだけじゃきつい。

偉そうにMQL4 Tutorialを参考にプログラミング始めようみたいなこと書いたんだけどハッカーはいざしらずプログラミングの素人には無理げじゃないと思います。そこでKindle版なんだけど豊嶋久道氏の「新MT4対応 FXメタトレーダープログラミング入門」を紹介しておきます。結構わかりやすいんじゃないかなと思います。

MetaEditorとRictyDiminished

MQL4 Tutorialを参考にプログラミングに挑戦してみましょう。MT4のツール(T)→メタエディター(E)でMetaEditorを開くことができます。ナビゲーターに表示されているツリーを開いてEAやScriptsのサンプルコード開いてみて下さい。チュートリアルを参考にコードと意味を探りちょっとずつ変更しながらプログラミングを学べると思います。

プログラミング初心者を謎のバグで泣かせる問題全角スペースを明示してくれるプログラミング用フォントがRictyDiminishedです。このフォントをインストール後MetaEditorのツール(T)→オプション(O)→フォントでRictyDiminishedを指定することができます。こうすることで全角スペースを赤点線の丸で表示してくれますので無用なバグを未然に防ぐことができます。

追記:Windows10では問題ないのですが、Windows7ではMetaEditorでRicyDiminihedのフォント指定ができないようです。

MetaQuotes Language 4

MetaQuotes Language 4(略称:MQL4)はトレード戦略作成のためのMetaTorader4のビルトイン言語です。 MQL4はオンライントレードプラットホーム製作の長い経験を基に MetaQuotes Software Corp.によって開発されました。この言語を使えば自分のトレード戦略にピッタリあったシステムトレードを実現するプログラム Expert Advisor(EA)を作ることができます。また、MQL4を使ってカスタムインジケータやスクリプト、 ライブラリーやインクルードファイルを作ることができます。Build600以後のバージョンからMQL4とMT5の両方で動作する プログラムを同じコードで作成できるようになりました。 殆どのFX業者はMT4がメインですが今後MT5への移行が進んでも同じソースコードを使うことができます。 データ型が追加されClassなどのオブジェクト指向プログラミングに必要な機能をサポートしていますのでほとんどC++言語だと言えます。

MetaTrader 4

MetaTrader 4(メタトレーダー4)は、2005年の発売以来わずか数年で世界中の金融機関ならびに投資家の方々に非常に人気となり、現在では世界中で750社以上の金融機関に取引プロットフォームとして採用して頂きました。
MetaTrader 4 は、外国為替市場において取引サービスを実現させるために開発された統合ソフトウェアであり、金融市場でサービスを提供するために必要となるほぼ全ての機能が含まれております。
本パッケージは、金融機関の要望を実現し続ける事で外国為替取引における最も人気のあるソフトウェアとなりました。

上記は(株)メタクオーツ・ソフトウェア・ジャパンのサイトからの転載です。MetaTrader4を略してMT4と呼ばれています。MT4は世界的なFX業界標準ツールと言っても過言ではないと思います。

ダイヤモンド社のザイFX!「メタトレード入門」の中で大人気のワケが書かれています。色々なトレードツールを試すより、初めからmt4をデモ口座で使い倒し操作に慣れる方が効率的です。

やる気さえあればプログラミングで自分専用のインジケータを作ったり自動売買をするEA(エキスパートアドバイザ)まで作成することもできるツールが無料というだけでも素晴らしいです。プログラミングはできませんがスマートフォンやタブレット版もあります。メタクオーツ本社から又は海外FX業者からでもPC版のMT4をダウンロードして体験してみましょいう。