記事一覧

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

MT4 ♪ close 部分を変更してみる。(MACD Sample.mq4)


MACD Sample.mq4(H1)の取引結果をテスターで確認すると、大きく損失を出している部分がある。

なぜ、損失が大きくなる前にクローズしないの?って思ったので、

(クローズする部分の)ソースを確認してみる。





律儀に MACD の値を使用してクローズするタイミングを見計らっているじゃないの。

しかも、MACD の値でクローズする条件しか記述されていない。





別の条件を追記しちゃおう。





為替に関する知識が乏しいので、最適化で出た値でなんとかなるようにしてみようと思う。

損切の価格をポイント単位で指定できる形式にしよ。





まず、上部のグローバル変数(input double xxx 的な部分)へ、TakeProfit を参考に追記してみる。

input double xStopLossB = 50;
input double xStopLossS = 50;

買いと売りで、損切の価格を分ける仕様としてみる。





んで、OP_BUY の OrderClose 関数の前の条件式へ以下を、論理和の || で追加する。

( OrderOpenPrice() - Bid ) が ( xStopLossB * Point ) よりも大きければ

OP_SELL の方へは、以下を

( Ask - OrderOpenPrice() ) が ( xStopLossS * Point ) よりも大きければ





としてみて、コンパイル。

テストしてみる。






xStopLossB は 80 前後で、良い感じ。

きっと、MACD がイマイチの時、損切りしてくれているのだろう。

(私の環境では、USDJPY ロット数 0.1 の場合、80 は 800 円)





xStopLossS は、良い値が無かった。基本形の MACD Sample.mq4 よりも悪い結果となってしまう。

2200 以上の幅を確保しておけば、MACD の条件を邪魔しない。





むむむ。(USDJPY ロット数 0.1 の場合、2200 は 22000 円)

3000 に設定し、もし損切りされてしまえば、30000 円か。





MT4(次の記事)
MT4(前の記事)
MT4(最初の記事)
MT4
.

コメント

コメントの投稿

非公開コメント

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。