Nasıl kodlanır? - sayfa 166

 

cevabın için teşekkürler.

ama pozisyon kapatıldığında kayma olursa bu işe yaramaz, değil mi?

 
codersview:
Herkese selam,

RSI ve MA'nın EA'sı ile ilgili bir sorunum var ...

Göstergenin düzgün çalışmasını sağladım... Tek istediğim onu EA'ya dönüştürmek...

Birkaç şey denedim. IndicatorCounted() EA'da çalışmıyor, bu yüzden for döngüsünün (bar=0; bar<15; bar++) değerlerini sabit kodlamaya çalıştım, doğru RSI alıyordum, ancak SMA doğru değerleri vermiyor...

RSI'yi geçen SMA kodunu ekliyorum...

Birisi lütfen bu Göstergeyi EA'ya dönüştürmeme yardım edebilir mi?

******************************************************* ******************************************************* ****************************************

#özellik göstergesi_separate_window

#özellik göstergesi_tamponları 2

#özellik göstergesi_color1 ÇimYeşil

#özellik göstergesi_renk2 KoyuMavi

çift ExtMapBuffer1[];

çift ExtMapBuffer2[];

int init()

{

IndicatorDigits(MarketInfo(Symbol(),MODE_DIGITS));

SetIndexStyle(0,DRAW_LINE);

SetIndexBuffer(0,ExtMapBuffer1);

SetIndexStyle(1,DRAW_LINE,STYLE_SOLID,2);

SetIndexBuffer(1,ExtMapBuffer2);

dönüş(0);

}

int tanım()

{

dönüş(0);

}

int başlangıç()

{

int çubuğu, sınır;

int counted_bars=IndicatorCounted();

if(counted_bars<0) return(-1);

if(counted_bars>0) counted_bars--;

limit=Bars-IndicatorCounted();

for(bar=0; bar<limit; bar++)

ExtMapBuffer1 = iRSI(NULL,0,14,PRICE_TYPICAL,bar);

for(bar=0; bar<limit; bar++)

ExtMapBuffer2=iMAOnArray(ExtMapBuffer1,Çubuklar,14,0,MODE_SMA,çubuk);

dönüş(0);

}

******************************************************* ******************************************************* ****************************************

Teşekkürler & Saygılar,

Ganeş

Ganeş,

Çubukları zaman sırasına göre yapmayı deneyin.

for(bar=0; bar<limit; bar++) yerine

for(bar=limit-1; bar>=0; bar--) kullanın

Chazzmoney

 

Merhaba

Hızlı geri dönüş için teşekkürler... Denedim ama hiçbir fark yaratmadı...

Bu da döngüde Barlar kullanırsak, her bir işaret için (tüm çubuklar için) tüm değerleri hesaplaması gerekir ... ve gecikme olabilir.. Ayrıca SMA değeri sıfır olacaktır.

Göstergede RSI ve EMA'yı yalnızca yeni çubuk için IndicatorCounted() kullanarak hesaplayacaktık, ancak bunu EA'da kullanamıyoruz..

Sorunun tam noktası 2. for döngüsü ve iMAOnArray değerleridir.

First for döngüsü, kodladığımızda bile mükemmel çalışıyor ...

 
jan100:
cevabın için teşekkürler. ama pozisyon kapatıldığında kayma olursa bu işe yaramaz, değil mi?

Bazı brokerler yorum alanına [sl] ve [tp] yazar. Siz de kullanabilirsiniz.

 

Teşekkürler. bunu deneyeceğim.

doğru sihirli sayı ile son kapalı sırayı seçmek nasıl mümkün olabilir?

 
jan100:
Teşekkürler. bunu deneyeceğim. doğru sihirli sayı ile son kapalı sırayı seçmek nasıl mümkün olabilir?

Geçmiş listesinde bulursanız, bu kapalı bir sipariştir, toplam listedeyse - henüz açıldı.

 

Ea kod talebi: Yeni pozisyon açıldığında önceki emri kapat

Merhaba, yeni pozisyon açıldığında otomatik olarak önceki emir kapanacağı için kod talebinde bulunmak istiyorum. Yani kar al veya takip et kullanmak istemiyorum.

Misal:

Emir alış açıkken, önceki emir satışı kapanacaktır.

Emir satışı açıkken, önceki emir alımı kapanacaktır.

kodun OrderCloseBy() olduğunu buldum ama bu kodu tam olarak nereye koyacağımı bilmiyorum

Teşekkürler

 
darkkiller:
Merhaba, yeni pozisyon açıldığında otomatik olarak önceki emir kapanacağı için kod talebinde bulunmak istiyorum. Yani kar al veya takip et kullanmak istemiyorum.

Misal:

Emir alış açıkken, önceki emir satışı kapanacaktır.

Emir satışı açıkken, önceki emir alımı kapanacaktır.

kodun OrderCloseBy() olduğunu buldum ama bu kodu tam olarak nereye koyacağımı bilmiyorum

Teşekkürler

Sorun çözme

OrderSend'den sonra koy SATIN AL

{

OrderClose(OrderTicket(),OrderLots(),Bid,3,Violet); // konumu kapat

}

SiparişGönder SATIŞTAN sonra koy

{

OrderClose(OrderTicket(),OrderLots(),Ask,3,Violet); // konumu kapat

}

ForexFactory sayesinde aldığım diğer kodlar(Fulltime247,magnumfreak)

harici int MAGICTerminal=101;

harici çift LOTSize=0.10;

extern string ORDERComment="Sipariş Açıklama Metni";

//Toplam sayım..

int btoplam=0; int toplam=0; int bilet=0; çift dolap = 0; bool xbool;

for( int cnt=SiparişlerToplam()-1;cnt>=0;cnt--)

{

xbool=OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);

if(OrderType()==OP_BUY && OrderMagicNumber()==MAGICTerminal && OrderSymbol()==Symbol()){btotal++; bilet=SiparişTicket(); closelots=OrderLots();}

if(OrderType()==OP_SELL && OrderMagicNumber()==MAGICTerminal && OrderSymbol()==Symbol()){stotal++; bilet=SiparişTicket(); closelots=OrderLots();}

}// TOPLAM SON sayım..

if(Satın alma şartınız ne olursa olsun)

{

if(btotal>0){SiparişKapat(bilet,kapanışlar,Teklif,3,CLR_NONE);}

bilet=OrderSend(Symbol(),OP_BUY,LOTSize,Ask,3,0,0,ORDERComment,MAGICTerminal,0,Macenta);

}

if(SATIŞ İÇİN ŞARTINIZ NE OLURSA OLSUN)

{

if(toplam>0){SiparişKapat(bilet,dolular,Ask,3,CLR_NONE);}

bilet=OrderSend(Symbol(),OP_SELL,LOTSize,Bid,3,0,0,ORDERComment,MAGICTerminal,0,Lime);

}
 
 

MT4'te yeniyim.

ShortMA longMA'yı geçtikten sonra çubuk sayısını hesaplamak istiyorum, bu fonksiyonun nasıl kodlanacağını bilen var mı?

Şimdiden teşekkürler!