FXトレードを行っているとアラートを出したい場合があります。
今回はアラートを出すためにいくつかEAを作成してみます。
アラートを鳴らしたいときはアラート関数を使います。( Alert(“”))
ボリンジャーバンド-2σ以下になったらアラートを出す
1 2 3 |
if(iBands(NULL,0,20,2,0,PRICE_CLOSE,MODE_LOWER,1) <= Low[1]) { Alert("買いシグナル"); } |
ボリンジャーバンド2σ以上になったらアラートを出す
1 2 3 |
if(iBands(NULL,0,20,2,0,PRICE_CLOSE,MODE_UPPER,1) >= High[1]) { Alert("売りシグナル"); } |
スプレッドが指定値以上開いたらアラート
1 2 3 |
if(MarketInfo(Symbol(),MODE_SPREAD) > 20) { Alert("スプレッドが開いています"); } |
ロットが異常な場合にアラート
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
int MagicNo = 1; int cnt = 1; for (int i = OrdersTotal() - 1; i >= 0; i--) { if(OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) { // 指定EAのポジションの場合 if(OrderMagicNumber() == MagicNo) { cnt += 1; Alert("ポジションを持ちました"); // ロットが異常に大きかったらアラート if(OrderLots() > 1) { Alert("ロットが大きすぎます"); } // ロットが異常に小さかったらアラート if(OrderLots() > 1) { Alert("ロットが大きすぎます"); } } if(cnt > 1) { Alert("複数のポジションを持っています"); } } } |
音楽を鳴らす場合
1 2 |
//wavファイルのみ呼び出し可能 PlaySound("アラート.wav"); |
メールを送る場合
1 2 |
//wavファイルのみ呼び出し可能 bool SendMail("アラート", "シグナルです"); |