Kodlama yardımı - sayfa 338

 
Maine:
Merhaba,

Son üç kapalı alım veya satım işlemimin karlı olup olmadığını kontrol etmek ve buna bağlı olarak bir dizi değerini değiştirmek istiyorum.

Bu koda sahibim (MT4):

for(int i=(OrdersHistoryTotal()-1);i>=0;i--);

{

OrderSelect(i, SELECT_BY_POS,MODE_HISTORY);

if(OrderSymbol()==Symbol() && OrderMagicNumber()==BUY)

{

//for buy order

if(OrderType()==OP_BUY && OrderProfit()>0) last=1;

if(OrderType()==OP_BUY && OrderProfit()<0) last=0;

}

}

for(int j=(OrdersHistoryTotal()-1);j>=0;j--);

{

OrderSelect(j, SELECT_BY_POS,MODE_HISTORY);

if(OrderSymbol()==Symbol() && OrderMagicNumber()==SELL)

{

//for sell order

if(OrderType()==OP_SELL && OrderProfit()>0) last2=1;

if(OrderType()==OP_SELL && OrderProfit()<0) last2=0;

}

}

Ama benim için çalışmıyor.

Nasıl modifiye etmeliyim?

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

Bu iki satır ne yapmaya çalışıyor (kodunuzda SATIN AL ve SATIŞ nedir - veya bunu derlemeye çalıştınız mı - SATIN AL ve SAT önceden tanımlanmış sabitler olmadığından). Ayrıca, OrderMagicNumber(), siparişin türü değil, sihirli bir sayıdır:

OrderMagicNumber()==SATIN AL

OrderMagicNumber()==SAT

 

Herkese selam,

Bir stepma uzmanı yaptım ve bunu kullanıyorum:

int trendCurr = iCustom(s_symbol,StepMaTimeFrame,"Stepma",Length,Kv,StepSize,MA_Mode,Advance,Percentage,UpDownShift,HighLow,ColorMode,5,StepMaBarToTest );

int trendPrev = iCustom(s_symbol,StepMaTimeFrame,"Stepma",Length,Kv,StepSize,MA_Mode,Advance,Percentage,UpDownShift,HighLow,ColorMode,5,StepMaBarToTest+1);

if (trendCurr > 0 && trendPrev < 0) SendLong = true;

if (trendCurr 0) SendShort = true;

Şimdi yardıma ihtiyacım var, stepma'daki fiyat gerilemelerini takas etmek istersem ne tür bir kod kullanabilirim?

Fiyat stepmaya dokunursa stepma renginin yoluna girer.

Teşekkürler !

 
albert666:
Herkese selam,

Bir stepma uzmanı yaptım ve bunu kullanıyorum:

int trendCurr = iCustom(s_symbol,StepMaTimeFrame,"Stepma",Length,Kv,StepSize,MA_Mode,Advance,Percentage,UpDownShift,HighLow,ColorMode,5,StepMaBarToTest );

int trendPrev = iCustom(s_symbol,StepMaTimeFrame,"Stepma",Length,Kv,StepSize,MA_Mode,Advance,Percentage,UpDownShift,HighLow,ColorMode,5,StepMaBarToTest+1);

if (trendCurr > 0 && trendPrev < 0) SendLong = true;

if (trendCurr 0) SendShort = true;

Şimdi yardıma ihtiyacım var, stepma'daki fiyat gerilemelerini takas etmek istersem ne tür bir kod kullanabilirim?

Fiyat stepmaya dokunursa stepma renginin yoluna girer.

Teşekkürler !

albert666

Bunun için fiyatları stepma değeriyle karşılaştırmanız gerekir (sadece stepma trendi değil. Ancak fiyat neredeyse hiçbir zaman gösterge değeriyle aynı olmadığından, bununla ilgili problemleriniz olacak + gecikmeli sinyal ile sonuçlanabilirsiniz (çünkü 3 çubuğu karşılaştırın ve en yeni çubuğun onaylanması gerekir yoksa birçok yanlış sinyal alabilirsiniz

 

merhaba albert,

Ben de aynı fikri düşünüyorum.

Cevap için teşekkürler Mladen, belki bir barın kapanışını kullanabiliriz, belki daha kolay olur?

 
Big Joe:
merhaba albert,

Ben de aynı fikri düşünüyorum.

Cevap için teşekkürler Mladen, belki bir barın kapanışını kullanabiliriz, belki daha kolay olur?

Joe

Geri çekilmeler geriye dönüp bakıldığında iyi görünüyor, ancak size hatırlatmak gerekirse: her trend değişikliği potansiyel bir geri çekilmeydi. Çalışma zamanında bir geri çekilme mi yoksa bir trend değişikliği mi olacağını tahmin etmeye çalışın ve ne demek istediğimi anlayacaksınız.

 
mladen:
albert666 Bunun için fiyatları stepma değeriyle karşılaştırmanız gerekir (sadece stepma trendi değil. Ancak fiyat neredeyse hiçbir zaman gösterge değeriyle aynı olmadığı için, bununla ilgili problemleriniz olacak + gecikmeli sinyal ile karşılaşabilirsiniz (çünkü 3 çubuğu karşılaştırmak için en yeni çubuğun onaylanması gerekir yoksa birçok yanlış sinyal alabilirsiniz

Teşekkürler efendim Mladen, ne demek istediğinizi anlıyorum, bu doğru, kulağa çılgınca gelebilir, ama yine de bana bunu kodlamayla ilgili bazı ipuçları verebilir misiniz?

Tamamen kayboldum, Bid() ve Ask() kullanmalı mıyım?

Teşekkürler.

 
mladen:
alfa24

Bunun için yeni bir göstergeye ihtiyacınız yok

Zaten ayrı bir pencerede olan herhangi bir ma kullanın ve ardından bollinger bantlarını o alt pencereye sürükleyin ve fiyat alanı olarak önceki gösterge verilerini seçin

Mladen Efendim

Görünüşe göre çok meşgulsün ya da yapmak istemiyorsun. İhtiyacım çok küçük ve basitti. Teknik Analizde öğrendiğim şey, küçük ve basit şeylerde çok daha fazla potansiyel var. herhangi bir şekilde teşekkür ederim.

 
alpha24:
Mladen Efendim, görünüşe göre çok meşgulsünüz ya da ilgilenmiyorsunuz. İhtiyacım çok küçük ve basitti. Teknik Analizde öğrendiğim, küçük ve basit şeylerde çok daha fazla potansiyel var. herhangi bir şekilde teşekkür ederim.

alfa24

yazınızı anlayamadım

Size ihtiyacınız olanı nasıl kolayca alabileceğinizi açıkladım. O zaman sorun nedir? Çözümü beğenmediniz mi (yani, btw, tam olarak tanımladığınız ve olabildiğince basit)? Gönderinize doğru bir çözümle cevap verildiğinde sorunun ne olabileceğini göremiyorum

Saygılarımızla

 
albert666:
Teşekkür ederim efendim Mladen, ne demek istediğinizi anlıyorum, kulağa çılgınca gelebileceği doğru, ama yine de bunu kodlama hakkında bana biraz ipucu verebilir misiniz?

Tamamen kayboldum, Bid() ve Ask() kullanmalı mıyım?

Teşekkürler.

albert666

Önermek istediğim şey, bir süre için çalışma zamanındaki (geçmiş verilerde değil, ancak ilk kapalı çubukta maksimum) geri tepmeleri tahmin etmeye çalışmanız ve bu, geri tepme tahmini konusunda tam sorunların ne olduğunu daha net hale getirmenizdir. . Bu kesin tahmin oyununun da EA tarafından yapılması gerekecek.

 
alpha24:
Mladen Efendim, görünüşe göre çok meşgulsünüz ya da ilgilenmiyorsunuz. İhtiyacım çok küçük ve basitti. Teknik Analizde öğrendiğim, küçük ve basit şeylerde çok daha fazla potansiyel var. herhangi bir şekilde teşekkür ederim.

İşte ayrı bir pencerede eski bir hareketli ortalama: move_averages_sw.mq4

Çok eski olmasına rağmen yeni metatrader'da da çalışıyor

Dosyalar: