MaxOpenTime=138;パラメータですね。ロング(買い)とショート(売り)の利幅と損切り幅を作ってます。(このEAは、ODLの時間に合わせてあるようです。)t1,t2はいつのバーなのかを、設定するものです。delta_L,delta_Sは、変動ピプスのようです。Ordersは、一度に持つポジションの数のようです。MaxOpenTimeで、ポジション保持時間を制限します。各パラメータは、コードを見ていくと役割が分かってきますので、次に進みましょう。tmp;記憶用の変数を宣言してます。これらも後にでてくる、大事な変数です。次から、自作の関数を宣言しています。プログラマーさんが書いたものを見ると、よく見かける形なのですが、こうすることで処理速度を速めてるのだと思います。いう初期値0.1の小数変数を宣言しています。買いポジションを持つ関数としてあります。magic=0;として、この関数の中だけで使う変数を宣言しています。文字がありますが、バージョン更新の前のままのものかと思います。ticket=OrderSend(Symbol(),OP_BUY,volume,Ask,slippage,Ask-StopLoss_L*Point,Ask+TakeProfit_L*Point,comment,magic,0,arrow_color);としています。いう関数の性質なのですが、「カッコ内で指定したものをオーダーする」ということと、「オーダー先のサーバーから割り当てられた注文番号を返す」というものがあります。いう整数変数に注文番号を代入しています。(もし、エラーなどで注文が成立しなかった場合は、【-1】という整数が代入されることになります。カッコ内は、ほとんど変数で指定されています。使ったときに取得するものです。0.6を代入してOpenLong(volume)を宣言した{}内をおこなうという手順になります。次にif(ticket>0){として、注文番号が割り当てられた時に実行することを書いてあります。if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES)){return(0);}となっています。なる」というものがあります。なるということを利用しています。(,MODE_TRADESを省略しても同じ意味になります)また、ここではプログラミングの構文みたいなものが使用されています。それは、if(bool型){true(真)の場合、実行するコード}else{false(偽)の場合、実行するコード}といったものです。if文のカッコの中に==や>などがないのが特徴的ですね。if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES)){return(0);}は、注文番号ticketのものをちゃんと選択できたら、この関数(OpenLong)内の実行は、これでおしまいといった感じです。",GetLastError());return(-1);}}は、先ほどのfalseになったときの実行コードですね。ここで、Print()というものが、でてきます。これは、()内のものを操作履歴に書き込むというものです。複数書き込むには、カンマで区切って書いてあげます。文字を書き込みたいときは【"】で挟んであげます。いう文字と、GetLastError()という関数でどんなエラーが生じたのかを書き込みます。文字の部分は、OpenLong()関数内のOrderSelect()関数で発せられたエラーは:っと言った感じです。その後、return(-1);で、OpenLong()関数は-1ですよという処理をしてこの関数の実行は終了しています。エラーが出た関数は-1にするといった習慣なのでしょう。0より大きくない時に実行するコードが書いてあります。ここでも、先ほどと同じ感じですね。return(-1);で終了です。最後の}でOpenLongの関数の実行は終わりです。volume=0.1)として、今度は売りオーダーの関数を作るわけです。