fxシステムトレードの作り方

自分でシステムトレードを作ろうとすると、どういった手順を踏めば良いのでしょう?「難しい」という話は良く聞きますが、何がどう難しいのか。ちょっと見ていきましょう。

まず、MT4でなくとも、システムトレードを考える時はやはり売買ルールが明確に頭の中にないと駄目でしょう。あまりにも複雑なルールは最初からプログラム化しにくいので、まずは売買ルールも簡単に組み立てておいて、言語が習得出来てきたらどんどんアップデートしていくと良いでしょう。

次に、その考えたルールをプログラミングしていきます。実際のプログラミング言語で、ルールを表現する訳ですが、ここは初心者だと一番苦労するところです。MetaEditor内で、MQL()という言語を使ってプログラミングしていきます。変数(色々な値を格納できる箱のようなもの)、データ型(変数の中に入れる事が出来る値のタイプを表す。日付型、文字型、整数型など)、条件文(処理を実行する条件。IFやAND、ORなど)、代数演算子(a+b…加法、a-b…減法、a*b…乗法、a/b…除法)、比較演算子(a >b…aよりbが小さい、a>=b…aよりbが小さいまたは等しい、a
次に、システムトレードならではの関数を覚えます。これはオーダー関数。注文を入れたい時に使います。OrderSend(Symbol(),OP_BUY,Lots,Ask,3,NULL,NULL,NULL,0,0,Blue);

OrderSendで注文を出すために、幾つかの情報(引数)が必要です。Symbol()…取引するべき通貨ペア、OP_BUY…注文の種類(OP_BUYは買いで注文/OP_SELLはショートで注文)、Lots…取引量(0.1だと通常1万通貨)、Ask…取引値(Askは買い/売りはBid)、スリッページ3(取引を行う値段から、いくら離れた値段までなら取引を実行するか)、ストップロス (ストップロスの数値。指定しない場合NULL)、NULL(テイクプロフィット。指定しない場合NULL)、NULL(コメント。指定しない場合NULL )、0(マジックナンバー。指定しない場合0)0(有効期限。指定しない場合0)、0(色)

これらを指定すると、その条件で注文してくれます。このようにしてシステムが出来上がったら、コンパイルをし、バックテストを行い、良いものが出来たら実際の運用となります。どうでしょうか。「面白そう!」と思われましたか?「何だか分からない!」という人も当然いるでしょう。やはりある程度基礎のある人でないと、少々勉強したぐらいでは作れないというのが本当の所です。システムトレードの作り方を勉強している間にも、時間は過ぎていきますので、早くシステムトレードで運用したいという人は、やはり選択型のシステムトレードがお手軽で良いと思います。