borilunad : Bunu yapabilirsiniz: Km=MathMax(i/r,Nokta); // bölme ile ve sıfır olmayacak!
uuuuu!!! Kafa! Çok teşekkürler!!! Son derece sıkıcı dört saatlik bir çalışmadan sonra, test cihazının küfretmemesi için bu işlevi nasıl yapıştıracağımı hala buldum) aşağıdaki gibi bir şey çıktı.
double a=iLow(Symbol(),PERIOD_M1,MODE_LOW,m1,0); // n-dönem için minimum fiyatla dönüş çubuğu indeksi
double b=iEn Yüksek(Symbol(),PERIOD_M1,MODE_HIGH,m1,0); // n dönemler için maksimum fiyatla dönüş çubuğu dizini
double MinLOWPeriod=iLow(Symbol(),PERIOD_M1,a); // en düşük fiyatlı çubuğun fiyat değerini döndür
double MaxHIGHPeriod=iHigh(Symbol(),PERIOD_M1,b); //barın fiyat değerini en yüksek fiyatla döndür
Ancak başka bir sihirli düğme daha var: SRC , hangi kodun (veya parçalarının) sorgulayıcının gönderisinde daha bakımlı ve okunabilir hale geldiğinde, sorgulayanın karmasına artı ekleyerek ve bakanların sayısını artırarak bu kodu ve bu konuda yardım etmeye karar verin.
Sadece ts-s-s... . Bu nedenle, SRC düğmelerinin büyüsünün gizli bilgisinde, temel olarak, yalnızca sitedeki kutsal metinleri onurlandıran kılavuzlar ayrılmıştır. Örneğin, bunlar gibi.
Ve daha fazla soru çözerken gizli bilgide ustalaşmakta size burada başarılar!
uuuuu!!! Kafa! Çok teşekkürler!!! Son derece sıkıcı dört saatlik bir çalışmadan sonra, test cihazının küfretmemesi için bu işlevi nasıl yapıştıracağımı hala buldum) aşağıdaki gibi bir şey çıktı.
void ChagingLots( int Magic, double percent, double lot)
{
double t= 2 , //коэффициент при делении,для того чтобы узнать цену закрытия
PriceCl, //цена закрытия части ордера
takeprofit; //нужна для вычисленийint count = 0 ,order;
for ( int i= OrdersTotal ()- 1 ;i>= 0 ;i--) //пробегаемся по массиву ордеров
{
if ( OrderSelect (i,SELECT_BY_POS,MODE_TRADES))
{
if (OrderSymbol()== Symbol () && OrderMagicNumber() == Magic)
{
if (OrderType()== OP_BUY) //если ордер на покупку
{
takeprofit = OrderTakeProfit(); //вычисляем тейк ордера
PriceCl = NormalizeDouble ((takeprofit + OrderOpenPrice())/t, Digits ); //примерную цену закрытия
order = OrderTicket(); //получили ордерif (Bid>PriceCl) //если текущая цена оказалась выше нашей цены ,то закрываем часть ордера
{OrderClose(order, NormalizeDouble (lot*percent/ 100 , 2 ),PriceCl, 3 );}
}
if ( OrderType()== OP_SELL ) // для продажи аналогично
{
takeprofit = OrderTakeProfit();
PriceCl = NormalizeDouble ((takeprofit + OrderOpenPrice())/t, Digits );
order = OrderTicket();
if (Bid<PriceCl)
{OrderClose(order, NormalizeDouble (lot*percent/ 100 , 2 ),Bid, 3 );}
}
}
}
}
}
Merhaba)
Bir pozisyonun bir kısmını kapatmak için bir fonksiyon yazmaya çalıştım ama test cihazında çalıştırmaya başladığımda 138 hatası çıkıyor.Sorunun ne olduğunu anlamadım.Lütfen yardım edin.
Bir pozisyonun bir kısmını kapatmak için bir fonksiyon yazmaya çalıştım ama test cihazında çalıştırmaya başladığımda 138 hatası çıkıyor.Sorunun ne olduğunu anlamadım.Lütfen yardım edin.
İşte bu işlevin çalışması gereken danışman)
Dokümana baktınız mı, bu hata ne anlama geliyor?! Buradan cevabı bulacaksınız!
MQL5.com web sitesine giriş yapmak için çerezlerin kullanımına izin vermelisiniz.
Lütfen tarayıcınızda gerekli ayarı etkinleştirin, aksi takdirde giriş yapamazsınız.
Hesabınıza giriş yaptınız. İki faktörlü kimlik doğrulama devre dışı bırakıldı. Yeniden kurup yeni bir QR kodu tarayın veya iki faktörlü kimlik doğrulama devre dışıyken devam edin.
Bunu yapabilirsiniz: Km=MathMax (i/r,Nokta); // bölme ile ve sıfır olmayacak!
uuuuu!!! Kafa! Çok teşekkürler!!! Son derece sıkıcı dört saatlik bir çalışmadan sonra, test cihazının küfretmemesi için bu işlevi nasıl yapıştıracağımı hala buldum) aşağıdaki gibi bir şey çıktı.
double a=iLow(Symbol(),PERIOD_M1,MODE_LOW,m1,0); // n-dönem için minimum fiyatla dönüş çubuğu indeksi
double b=iEn Yüksek(Symbol(),PERIOD_M1,MODE_HIGH,m1,0); // n dönemler için maksimum fiyatla dönüş çubuğu dizini
double MinLOWPeriod=iLow(Symbol(),PERIOD_M1,a); // en düşük fiyatlı çubuğun fiyat değerini döndür
double MaxHIGHPeriod=iHigh(Symbol(),PERIOD_M1,b); //barın fiyat değerini en yüksek fiyatla döndür
double PriceCloseBar=iClose(Symbol(),PERIOD_M1,0); //son çubuğun kapanış fiyatının değerini döndür
double xm1=(PriceCloseBar-MinLOWPeriod)/(MathMax((MaxHIGHPeriod-MinLOWPeriod)/100,Nokta));
yazdır(xm1);
ve ayrıca formülü daha mantıklı hale getirdi;)
Teşekkür ederim!
sponger :
Ne yazık ki "teşekkür ederim" düğmesi yok
Ancak başka bir sihirli düğme daha var: SRC , hangi kodun (veya parçalarının) sorgulayıcının gönderisinde daha bakımlı ve okunabilir hale geldiğinde, sorgulayanın karmasına artı ekleyerek ve bakanların sayısını artırarak bu kodu ve bu konuda yardım etmeye karar verin.
Sadece ts-s-s... . Bu nedenle, SRC düğmelerinin büyüsünün gizli bilgisinde, temel olarak, yalnızca sitedeki kutsal metinleri onurlandıran kılavuzlar ayrılmıştır. Örneğin, bunlar gibi.
Ve daha fazla soru çözerken gizli bilgide ustalaşmakta size burada başarılar!uuuuu!!! Kafa! Çok teşekkürler!!! Son derece sıkıcı dört saatlik bir çalışmadan sonra, test cihazının küfretmemesi için bu işlevi nasıl yapıştıracağımı hala buldum) aşağıdaki gibi bir şey çıktı.
double xm1=(PriceCloseBar-MinLOWPeriod)/(MathMax((MaxHIGHPeriod-MinLOWPeriod)/100,Nokta));
yazdır(xm1);
ve ayrıca formülü daha mantıklı hale getirdi;)
Teşekkür ederim!
Merhaba)
Bir pozisyonun bir kısmını kapatmak için bir fonksiyon yazmaya çalıştım ama test cihazında çalıştırmaya başladığımda 138 hatası çıkıyor.Sorunun ne olduğunu anlamadım.Lütfen yardım edin.
İşte bu işlevin çalışması gereken danışman)
Merhaba)
Bir pozisyonun bir kısmını kapatmak için bir fonksiyon yazmaya çalıştım ama test cihazında çalıştırmaya başladığımda 138 hatası çıkıyor.Sorunun ne olduğunu anlamadım.Lütfen yardım edin.
İşte bu işlevin çalışması gereken danışman)
Dokümana baktınız mı, bu hata ne anlama geliyor?! Buradan cevabı bulacaksınız!
Bai hangi fiyattan kapanıyor? Ve Hücre?
hepiniz hoşgeldiniz
sorum daha çok meta alıntılardan gelen geliştiricilerle ilgili, ama yine de ...
Сколько баров храниться история? Т.е. с каким максимальным по сдвигу баром можно работать?
kod:
Print(iMA(Symbol(),0,14,0,MODE_SMA,PRICE_CLOSE,1200));
Print(iClose(Symbol(),0,1200));
Böyle bir kaymayı test ederken, terminal 2 durum için 0.0 verir.
,Ancak
Print(iMA(Symbol(),0,14,0,MODE_SMA,PRICE_CLOSE,120));
Print(iClose(Symbol(),0,120));
Her şey test edildiğinde çalışır.
Mevcut geçmişin miktarını bir şekilde düzenlemek mümkün müdür? Bu sorunla karşılaşan ve zaten bir çözüm bulan var mı?
Şimdiden teşekkürler!
Herkese merhaba.
Kim'in basit takip eden EA'sını eklemeye çalışıyorum, böylece tüm piyasa emirlerini kapattıktan sonra bekleyen emirleri siliyor , çalışmıyor(
siparişleri silmek için bir işlev ekledi:
Sonra, ustalaşma ihtimalim olmayan bir sorunla karşılaştım, kodlarda güçlü değilim.
Sanırım şöyle bir koşul yazmanız gerekiyor:
bu sadece başka bir EA'dan bir örnek
Bana yardım et lütfen.