Forumu kirletmemek için herhangi bir acemi sorusu. Profesyonel, kaçırmayın. Sensiz, hiçbir yerde - 6. - sayfa 911
Alım-satım fırsatlarını kaçırıyorsunuz:
- Ücretsiz alım-satım uygulamaları
- İşlem kopyalama için 8.000'den fazla sinyal
- Finansal piyasaları keşfetmek için ekonomik haberler
Kayıt
Giriş yap
Gizlilik ve Veri Koruma Politikasını ve MQL5.com Kullanım Şartlarını kabul edersiniz
Hesabınız yoksa, lütfen kaydolun
Arkadaşlar lütfen yardım edin!!!
Danışmanın metnini kopyalayıp yapıştırmaktansa ekran görüntüsünü alıp buraya göndermek gerçekten daha mı kolay? Birisinin bunu ekrandan ME'lerine manuel olarak yazıp anlamaya başlayacağını mı düşünüyorsunuz?
Derleyici, işlevin yürütülmesinin sonucunu kontrol etmenin gerekli olduğunu yazarsa, kontrol edilmesi gerektiği anlamına gelir. Zor değil:
if(S1a == S1b && S1a<20.0000 && S1b<20.0000 )
{OrderSend(Symbol(), OP_BUY, OrderValue, NormalizeDouble(Ask, Digits), Slippage, SL, TP, NULL, 0, 0,clrBlue);
MyOrderStateB = 1;
if(!OrderSend(Symbol(), OP_BUY, OrderValue, NormalizeDouble(Ask, Digits), 3, SL, TP, NULL, 0, 0,clrBlue))
Print("Opening Buy error #", GetLastError());}
else Sleep(2);
Teşekkür ederim. Ancak, doğru mu, değil mi? hala uyarı veriyor
Merhaba!
Benim uzmanımda bir önceki mumda mum açılıp açılmadığına bakılır, şartlar uygunsa pozisyon açılır, değilse açılmaz. Sorun, önceki mumun durumu kontrol edilmeden önce pozisyonun açılmasıdır. Logda bir pozisyonun açıldığını görüyorum ve daha sonra pozisyonun açılmaması gerekiyor. Bu sorunu nasıl çözecek?
başka Uyku(2);
Ve akraba ile aynı şeyi verir (
if(S1a == S1b && S1a<20.0000 && S1b<20.0000 )
{OrderSend(Symbol(), OP_BUY, OrderValue, NormalizeDouble(Ask, Digits), Slippage, SL, TP, NULL, 0, 0,clrBlue);
MyOrderStateB = 1;
if(!OrderSend(Symbol(), OP_BUY, OrderValue, NormalizeDouble(Ask, Digits), 3, SL, TP, NULL, 0, 0,clrBlue))
Print("Opening Buy error #", GetLastError());}
else Sleep(2);
Teşekkür ederim. Ancak, doğru mu, değil mi? hala uyarı veriyor
Yanlış, OrderSend'i iki kez aramanıza gerek yok. Evet ve TP'li SL, fiyata göre düşünülmeli ve puan olarak belirlenmemelidir. Ve Ask ve Bid'in açılış fiyatlarını değil, SL ve TP hesaplamalarının sonucunu normalleştirmek gerekiyor.
Genel olarak, "çalış, çalış ve tekrar çalış")))
Yanlış, OrderSend'i iki kez aramanıza gerek yok. Evet ve TP'li SL, fiyata göre düşünülmeli ve puan olarak belirlenmemelidir. Ve Ask ve Bid'in açılış fiyatlarını değil, SL ve TP hesaplamalarının sonucunu normalleştirmek gerekiyor.
Genel olarak, "çalış, çalış ve tekrar çalış")))
Tekrar çok teşekkür ederim!
Şimdi bir sorun var, danışman arka arkaya birkaç sipariş açıyor ve istediğim gibi değil (
int start()
{ S1a = NormalizeDouble(iStochastic(NULL, 0, S1_period, 3, S1_slowing, MODE_SMA, 1, MODE_MAIN, 1), 0);
S1b = NormalizeDouble(iStochastic(NULL, 0, S1_period, 3, S1_slowing, MODE_SMA, 1, MODE_SIGNAL, 1), 0);
if(MyOrderStateB == 1)Sleep(300000);
else MyOrderStateB = 0;
if(MyOrderStateS == 1)Sleep(300000);
else MyOrderStateS = 0;
if(S1a == S1b && S1a<20.0000 && S1b<20.0000 )
if(!OrderSend(Symbol(), OP_BUY, OrderValue, NormalizeDouble(Ask, Digits), Slippage, Bid - SL * Point, Ask + TP * Point, NULL, 0, 0,clrBlue))
Print("Opening Buy error #", GetLastError());
else Sleep(2);
MyOrderStateB = 1;
if(S1a == S1b && S1a>80.0000 && S1b>80.0000 )
if(!OrderSend(Symbol(), OP_SELL, OrderValue, NormalizeDouble(Bid, Digits), Slippage, Ask + SL * Point, Bid - TP * Point , NULL, 0, 0,clrRed))
Print("Opening Sell error #", GetLastError());
else Sleep(2);
MyOrderStateS = 1;
return(0);}
Strateji test cihazının garip davranışlarını gözlemledim. EA, bekleyen durdurma emirlerini ayarlar ve izler. hata. Aşağıdakiler olur. EA, Bystop ve Sellstop'u mevcut fiyattan 30 pip uzaklıkta ayarlar (Enstrüman - GbpUsd. Dört basamak. İzin verilen minimum seviye = 3 pip). Bir süre sonra, çalışmadılarsa, pazardan sonra onları çeker. İşte gördüğüm şey. değişiklik başarılı olur, değişiklik başarılı olur ve ardından bir noktada 1 numaralı hata açılır. Yani, her şey yolundaydı, danışman aynı işlemleri yaptı ve aniden bu hata ortaya çıktı. Fiyatların tamamı rakamlara göre normalleştirilmiştir. Genel olarak OrderModify() fonksiyonunun girişine beslenen tüm değerlerin tamamı normalize edilir!
Uzman Danışmanın test cihazındaki bu tür davranışlarının nedeni ne olabilir?