Nasıl kodlanır? - sayfa 159

 

Gösterge Fiyat Etiketi

Yardım lütfen!

Aşağıdaki gösterge kodunun neden bir aşağı ok çizeceğini, ancak bir fiyat etiketi ÇİZMEYECEĞİNİ söyleyen var mı? Başka herhangi bir stil doğru seviyede görünecek, ancak fiyatı gösterilmiyor mu?

int init()

{

DeleteAllObjects();

Gösterge Tamponları(2);

SetIndexBuffer(0,Satın Al);

SetIndexStyle(0,DRAW_OK,DRAW_OK,BuySize,BuyColor);

SetIndexArrow(0,SYMBOL_LEFTPRICE); < görünmüyor

SetIndexShift(0,1);

SetIndexBuffer(1,Sat);

SetIndexStyle(1,DRAW_OK,DRAW_OK,SellSize,SellColor);

SetIndexArrow(1,SYMBOL_ARROWDOWN); < parseller gayet iyi

SetIndexShift(1,1);

dönüş(0);

}

Teşekkürler!

 

Squize_MA göstergesi

Güzel gösterge.

Belki biri mavi çizgi kırmızı çizgiyi geçtiğinde bir uyarı koyabilir.

teşekkürler

Dosyalar:
squize_ma.mq4  3 kb
 

lütfen, en büyük kaybın izini sürmek için bana bir ipucu verir misin?

 
Wiley:
Bu sitede, bu bağlantıda https://www.mql5.com/en/forum/176053/page25 DIN_Kukus_EA_V2.6'nın bir kopyasıdır. EA'nın içeriğini görüntülerseniz, sipariş geçmişinizde sipariş kayıplarını kontrol eden bir işlev bulacaksınız, tıpkı kendiniz için yaptığınızı belirttiğiniz gibi. Başarılı işlemlerin sayısını sipariş geçmişinizden nasıl çıkaracağınıza ilişkin bu çalışma örneğini kullanabilirsiniz. Belirli bir süre için geçmişi çıkarmak için de değiştirebilirsiniz, ancak umarım bu, kendiniz için yapmayı önerdiğiniz şeyi nasıl başaracağınızı görmenize yardımcı olur...

Merhaba Wiley,

Yardım için teşekkürler.

Dürüst olmak gerekirse, bir çözüm üzerinde çalışmakla o kadar meşguldüm ki soruyu gönderdiğimi unuttum.

O günü mql4 kılavuzunu inceleyerek geçirdim ve bunu yapmanın bir yolunu buldum.

İşleme başlama zamanı geldiğinde, "Açılış Zamanı" adlı bir değişkeni o anki zamana eşit olarak ayarladım. Alım satım seansı sırasında ve bir alım satım kapatılmışsa, emir geçmişi boyunca EA döngüsüne sahibim ve verilen grafikten ve EA'dan gelen ve ayrıca "Açılış Zamanı"ndan daha büyük bir kapanış zamanı olan herhangi bir emir arıyorum. Ardından, siparişin kârını (veya zararını) (OrderProfit() işlevini kullanarak) benim belirlediğim (harici bir değişkenle) yeterli olarak karşılaştırır. Yeterince kar elde ettiğimde ve/veya belirli bir miktarı kaybettiğimde ticareti durdurabileceğim şekilde ayarladım.

Geriye dönük testler, zaten optimize edilmiş bir EA'nın sonuçlarını gerçekten iyileştirmediğini gösterdi (aslında, daha sık olarak onları daha da kötüleştiriyor), ki bu beklenen bir şey çünkü bir sonraki ticaretin (şimdi elimine ettim) olup olmadığını asla bilemeyiz. işleri daha iyi veya daha kötü yapacaktır.

Yine de en başından daha katı koşullar belirlememe izin veriyor. Böylece, EA en baştan "çık dışarı, yeterince yaşadım" seçeneği kullanılarak optimize edilebilir. Ve bu, sonuçlarımı biraz daha iyi hale getiriyor gibi görünüyor.

Yardımın için teşekkürler.

Ron

 

Ekli Dianpoli'yi bir EA'da kullanmaya çalışıyorum icustom'dakileri okumak için oklar ekledim, ancak icustom satırım açmıyor, herhangi bir yardım lütfen?

İşte EA'da kullandığım şey val2 = iCustom(Symbol(), Period(), "test3",300,15,1,1,0); & val3 = iCustom(Symbol(), Period(),"test3",300,15,1,2,0);

Dosyalar:
test3.mq4  5 kb
 
rwb181:
Merhaba Wiley,

Yardım için teşekkürler.

Dürüst olmak gerekirse, bir çözüm üzerinde çalışmakla o kadar meşguldüm ki soruyu gönderdiğimi unuttum.

O günü mql4 kılavuzunu inceleyerek geçirdim ve bunu yapmanın bir yolunu buldum.

İşleme başlama zamanı geldiğinde, "Açılış Zamanı" adlı bir değişkeni o anki zamana eşit olarak ayarladım. Alım satım seansı sırasında ve bir alım satım kapatılmışsa, emir geçmişi boyunca EA döngüsüne sahibim ve verilen grafikten ve EA'dan gelen ve ayrıca "Açılış Zamanı"ndan daha büyük bir kapanış zamanı olan herhangi bir emir arıyorum. Ardından, siparişin kârını (veya zararını) (OrderProfit() işlevini kullanarak) benim belirlediğim (harici bir değişkenle) yeterli olarak karşılaştırır. Yeterince kar elde ettiğimde ve/veya belirli bir miktarı kaybettiğimde ticareti durdurabileceğim şekilde ayarladım.

Geriye dönük testler, zaten optimize edilmiş bir EA'nın sonuçlarını gerçekten iyileştirmediğini gösterdi (aslında, daha sık olarak onları daha da kötüleştiriyor), ki bu beklenen bir şey çünkü bir sonraki ticaretin (şimdi elimine ettim) olup olmadığını asla bilemeyiz. işleri daha iyi veya daha kötü yapacaktır.

Yine de en başından daha katı koşullar belirlememe izin veriyor. Böylece, EA en baştan "çık dışarı, yeterince yaşadım" seçeneği kullanılarak optimize edilebilir. Ve bu, sonuçlarımı biraz daha iyi hale getiriyor gibi görünüyor.

Yardımın için teşekkürler.

Ron

hayır ihtiyacım olan şey bu değil

 

bu size maksimum kaybı sağlayacak

void history()

{max_loss=0;

int i,hstTotal=OrdersHistoryTotal();

for(i=0;i<hstTotal;i++)

{

//---- check selection result

if(OrderSelect(i,SELECT_BY_POS,MODE_HISTORY)==false)

{

Print("Access to history failed with error (",GetLastError(),")");

break;

}

if (OrderSymbol()==Symbol()&&OrderProfit()>=max_loss)max_loss=OrderProfit();

{

//code

}

}

}
 

OrderSymbol()==Symbol()&&OrderProfit()>=max_loss

Eminim sadece bir yazım hatasıydı ama...

Maksimum kaybı arıyorsanız, karşılaştırma operatörü 'küçüktür ()' olmalıdır.

Lüks

 
increase:
Ekli Dianpoli'yi bir EA'da kullanmaya çalışıyorum icustom'dakileri okumak için oklar ekledim, ancak icustom satırım açmıyor, herhangi bir yardım lütfen? İşte EA'da kullandığım şey val2 = iCustom(Symbol(), Period(), "test3",300,15,1,1,0); & val3 = iCustom(Symbol(), Period(),"test3",300,15,1,2,0);

Hiç kimse yardım edecek gibi görünmüyor, arkadaşlar lütfen cevap verin

 

Otomatik Uzman Danışman Oluşturucu

Fastbrokersfx'in ücretsiz (özel diyorlar) bir Otomatik Uzman Danışman Oluşturucusu vardır.

"FastBrokersFX ücretsiz bir Expert Advisor Builder sunuyor. Bizimle, MT4 için ticaret robotlarınızı tasarlamak için deneyimli bir programcı olmanıza gerek yok. Sadece birkaç tıklamayla, oluşturulan EA dosyanızı kaydedin ve bitirdiniz!"

Ana sayfalarından bu bağlantıya tıklayarak bir tane oluşturabilirsiniz:

Fastbrokersfx | Forex Ticareti | Forex ECN Erişimi |

İyi şanlar!

Neden: