Nasıl kodlanır? - sayfa 310

 

...

Çalışma zamanı yayılımları için şunu kullanın:

double currentSpread = MarketInfo(Symbol().MODE_SPREAD);
Premeus:
EA içinde yayılmış gerçek zamanlı kodu göstermek istiyorum. Herhangi biri lütfen bana biraz tavsiye verin.
 

teşekkür ederim malden. Ama web sunucusu için PHP kodunu biliyorum. EA tarafında kodlamayı bilmiyorum. Ya da diğerleri için stand.

Lütfen bana daha spesifik söyle. Üzgünüm, MQL4 programlamada yeniyim.

Ve yeni fiyat geldiğinde programın nasıl ve hangi bölümünün yürütüldüğünden emin değilim.

Programın tamamı veya yan init() veya start() içinde.

Tik bilgisi almak ve bu konuya sormuşum gibi göstermek istiyorum.

 

prim

Bu, mevcut sembolün yayılmasını alan metatrader MQl 4 kodudur. Sadece kodunuza kopyalayın ve yayılma bilgilerini bu şekilde alacaksınız.

Bu kod satırı, her bir tik üzerindeki yayılmayı kontrol etmek için start() içinde olmalıdır (çünkü her tikte değişebilmektedir). MarketInfo() işlevini çağırdığınızda ve currentSpread değişkenine değer atandığında, currentSpread'i ihtiyacınız olan testler veya diğer işlemler için kullanın.

Premeus:
teşekkür ederim malden. Ama web sunucusu için PHP kodunu biliyorum. EA tarafında kodlamayı bilmiyorum. Ya da diğerleri için stand.

Lütfen bana daha spesifik söyle. Üzgünüm, MQL4 programlamada yeniyim.

Ve yeni fiyat geldiğinde programın nasıl ve hangi bölümünün yürütüldüğünden emin değilim.

Programın tamamı veya yan init() veya start() içinde.

Tik bilgisi almak ve bu konuya sormuşum gibi göstermek istiyorum.
 

MartingailExpert_v1.0_Stochastic, nasıl?

Merhaba!

Birisi bana neden Stoploss'u Sırayla ekleyemediğimi söyleyebilir mi bilet gönder?

Taktığımda EA çalışmıyor!

Teşekkürler!

//+------------------------------------------- -------------------+

//| aaa.mq4 |

//| Telif Hakkı Š 2007, MetaQuotes Software Corp. |

//| TeamWox Groupware / MetaQuotes Software Corp. |

//+------------------------------------------- -------------------+

#property telif hakkı "Telif Hakkı Š 2007, MetaQuotes Software Corp."

#özellik bağlantısı "http://www.metaquotes.net"

dış çift adım=25;

harici int StepMode=0;

// Ĺńëč StepMode = 0, ňî řŕă ěĺćäó îđäĺđŕěč ôčęńčđîâŕííűé č đŕâĺí adım

// Ĺńëč StepMode = 1, ňî řŕă ďîńňĺďĺííî óâĺëč÷čâŕĺňń˙

dış çift proffaktör=10;

dış çift kat = 1.5;

harici çift lotalış=0.01;

dış çift lotsell=0.01;

dış çift per_K=200;

harici çift per_D=20;

harici çift yavaş=20;

harici çift bölgeBUY=20;

harici çift bölgeSELL=80;

harici çift Magicbuy=555;

harici çift Magicsell=556;

çift openpricebuy,openpricesell,lotsbuy2,lotssell2,lastlotbuy,sonlotsell,tpb,tps,cnt,smbuy,smsell,lotstep,

bilet satın alma,bilet satışı,maxLot,ücretsiz,denge,lotsell,lotbuy,kaz,sig_buy,sig_sell,sor,teklif;

int SiparişlerTotalMagicbuy(int Magicbuy)

{

int j=0;

int r;

(r=0;r<OrdersTotal();r++) için

{

if(Sipariş Seçimi(r,SELECT_BY_POS,MODE_TRADES))

{

if (OrderMagicNumber()==Magicbuy) j++;

}

}

dönüş(j);

}

int SiparişlerToplamMagicsell(int Magicsell)

{

int d=0;

int n;

(n=0;n<OrdersTotal();n++) için

{

if(Sipariş Seçimi(n,SELECT_BY_POS,MODE_TRADES))

{

if (OrderMagicNumber()==Magicsell) d++;

}

}

dönüş(d);

}

int orderclosebuy(int bilet satın al)

{

dizi sembolü = Sembol();

int cnt;

for(cnt = OrdersTotal(); cnt >= 0; cnt--)

{

OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);

if(OrderSymbol() == sembol && OrderMagicNumber()==Magicbuy)

{

biletbuy=OrderTicket();OrderSelect(ticketbuy, SELECT_BY_TICKET, MODE_TRADES);lotsbuy2=OrderLots() ;

çift teklif = MarketInfo(sembol,MODE_BID);

Yenileme Oranları();

SiparişKapat(ticketbuy,lotsbuy2,teklif,3,Macenta);

}

}

lotsbuy2=lotssatın;dönüş(0);

}

int orderclosesell(int bilet satışı)

{

dizi sembolü = Sembol();

int cnt;

for(cnt = OrdersTotal(); cnt >= 0; cnt--)

{

OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);

if(OrderSymbol() == sembol && OrderMagicNumber()==Magicsell)

{

bilet satış=OrderTicket();OrderSelect(ticketsell, SELECT_BY_TICKET, MODE_TRADES);lotssell2=OrderLots() ;

çift sor = MarketInfo(sembol,MODE_ASK);

Yenileme Oranları();

SiparişKapat(bilet satış,lotssell2,sor,3, Kireç);

}

}

lotsell2=lotssell;dönüş(0);

}

int başlangıç()

{

//----

çift kârlı satın alma=0;çift kârlısatış=0;

string sembolü = OrderSymbol();

çift yayılma = MarketInfo(sembol,MODE_SPREAD);

double minLot = MarketInfo(sembol,MODE_MINLOT);

if (minLot==0.01){dig=2;maxLot=MarketInfo(symbol,MODE_MAXLOT);}

if (minLot==0.1){dig=1;maxLot=((HesapBalance()/2)/1000);}

if(OrdersTotalMagicbuy(Magicbuy)>0)

{

çift smbuy;

(cnt=0;cnt<OrdersTotal();cnt++) için

{

OrderSelect(cnt,SELECT_BY_POS, MODE_TRADES);

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

{

biletbuy = OrderTicket();OrderSelect(ticketbuy,SELECT_BY_TICKET, MODE_TRADES);

smbuy = smbuy+OrderLots();openpricebuy = OrderOpenPrice();lastlotbuy = OrderLots();

}

}

{

if (smbuy+(NormalizeDouble((lastlotbuy*mult),dig))<maxLot)

{

if(AdımModu==0)

{

if(Sor<=openpricesatın alma adımı*Puan)

{

lotbuy2=sonlotbuy*çok;

RefreshRates();ticketbuy=OrderSend(Symbol(),OP_BUY,NormalizeDouble(lotsbuy2,dig),Ask,3,0,0,"MartingailExpert",Magicbuy,0,Mavi);

}

}

if(AdımModu==1)

{

if(Ask<=openpricebuy-(step+OrdersTotalMagicbuy(Magicbuy)+OrdersTotalMagicbuy(Magicbuy)-2)*Puan)

{

lotbuy2=sonlotbuy*çok;

RefreshRates();ticketbuy=OrderSend(Symbol(),OP_BUY,NormalizeDouble(lotsbuy2,dig),Ask,3,0,0,"MartingailExpert",Magicbuy,0,Mavi);

}

}

}

}

}

if(OrdersTotalMagicsell(Magicsell)>0)

{

çift koku;

(cnt=0;cnt<OrdersTotal();cnt++) için

{

OrderSelect(cnt,SELECT_BY_POS, MODE_TRADES);

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

{

bilet satış = OrderTicket();OrderSelect(ticketsell,SELECT_BY_TICKET, MODE_TRADES);

smsell = smsell + OrderLots();openpricesell = OrderOpenPrice();lastlotsell = OrderLots();

}

}

{

if (smsell+(NormalizeDouble((sonlotsell*mult),dig))<maxLot)

{

if(AdımModu==0)

{

if(Teklif>=openpriceell+adım*Puan)

{

lotsell2=sonlotsell*çok;

RefreshRates();ticketsell=OrderSend(Symbol(),OP_SELL,NormalizeDouble(lotssell2,dig),Bid,3,0,0,"MartingailExpert",Magicsell,0,Red);

}

}

if(AdımModu==1)

{

if(Teklif>=openpricesell+(step+OrdersTotalMagicsell(Magicsell)+OrdersTotalMagicsell(Magicsell)-2)*Puan)

{

lotsell2=sonlotsell*çok;

RefreshRates();ticketsell=OrderSend(Symbol(),OP_SELL,NormalizeDouble(lotssell2,dig),Bid,3,0,0,"MartingailExpert",Magicsell,0,Red);

}

}

}

}

}

//sinyalin üretilme şeklini değiştirmek için xm7 modifikasyonu. Eski kod sonunda

double Stoch_0 = iStochastic(NULL,0,per_K,per_D,yavaş,MODE_LWMA,1,0,0);

double Stoch_1 = iStochastic(NULL,0,per_K,per_D,yavaş,MODE_LWMA,1,0,1);

if(OrdersTotalMagicbuy(Magicbuy)<1)

{

if(Stoch_0 > zoneBUY && Stoch_1 <= zoneBUY)

biletbuy = OrderSend(Symbol(),OP_BUY,lotsbuy,Ask,3,0,0,"MartingailExpert",Magicbuy,0,Mavi);

}

if(SiparişlerToplamMagicsell(Magicsell)<1)

{

if(Stoch_0 = bölgeSATIŞ)

bilet satış = OrderSend(Symbol(),OP_SELL,lotssell,Bid,3,0,0,"MartingailExpert",Magicsell,0,Red);

}

(cnt=0;cnt<OrdersTotal();cnt++) için

{

OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);

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

{

biletbuy = OrderTicket();OrderSelect(ticketbuy,SELECT_BY_TICKET, MODE_TRADES);profitbuy = kârbuy+OrderProfit() ;

openpricebuy = OrderOpenPrice();

}

}

tpb = (SiparişlerToplamMagicbuy(Magicbuy)*proffactor*Puan)+openpricebuy;

çift teklif = MarketInfo(Symbol(),MODE_BID);

if (kâr satın al>0)

{

if (Teklif>=tpb) orderclosebuy(ticketbuy);

}

(cnt=0;cnt<OrdersTotal();cnt++) için

{

OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);

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

{

bilet satış = OrderTicket();OrderSelect(ticketsell,SELECT_BY_TICKET, MODE_TRADES);profitsell = kâr satış+OrderProfit();

openpricesel = OrderOpenPrice();

}

}

tps = openpricesell-(SiparişlerToplamMagicsell(Magicsell)*profaktör*Puan);

çift sor = MarketInfo(Symbol(),MODE_ASK);

if (kâr satışı>0)

{

if (Sor<=tps)siparişkapat(bilet satışı);

}

ücretsiz = AccountFreeMargin();balance = AccountBalance();

(cnt=0;cnt< OrdersTotal();cnt++) için

{

OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);

if (OrderSymbol()==Symbol() && OrderMagicNumber () == Magicbuy) biletbuy = OrderTicket();

if (OrderSymbol()==Symbol() && OrderMagicNumber () == Magicsell) ticketell = OrderTicket();

}

if (OrdersTotalMagicbuy(Magicbuy)==0)

{

kârlı satın alma=0;ticketbuy=0;tpb=0;

}

if (OrdersTotalMagicsell(Magicsell)==0)

{

kâr satış=0;ticketsell=0;tps=0;

}

Comment("FreeMargin = ",NormalizeDouble(free,0)," Balance = ",NormalizeDouble(balance,0)," maxLot = ",NormalizeDouble(maxLot,dig),"\n",

"Totalbuy = ",OrdersTotalMagicbuy(Magicbuy)," Parti = ",smbuy," Totalsell = ",OrdersTotalMagicsell(Magicsell)," Parti = ",smsell,"\n",

"------------------------------------------------ --------------","\n","Kar satın al = ",kar satın al,"\n",

"Kar satışı = ",kar satışı);

//----

for(int ii=0; ii<2; ii+=2)

{

ObjectDelete("doğru"+ii);

ObjectCreate("doğru"+ii,OBJ_HLINE, 0, 0,tps);

ObjectSet("doğru"+ii, OBJPROP_COLOR, Kırmızı);

ObjectSet("doğru"+ii, OBJPROP_WIDTH, 1);

ObjectSet("doğru"+ii, OBJPROP_RAY, Yanlış);

}

for(int rr=0; rr<2; rr+=2)

{

ObjectDelete("rect1"+rr);

ObjectCreate("rect1"+rr,OBJ_HLINE, 0, 0,tpb);

ObjectSet("rect1"+rr, OBJPROP_COLOR, Mavi);

ObjectSet("rect1"+rr, OBJPROP_WIDTH, 1);

ObjectSet("rect1"+rr, OBJPROP_RAY, Yanlış);

}

dönüş(0);

}
 

...

Bunun birkaç nedeni olabilir, ancak en yaygın olanları:

- zararı durdur ve / veya kar al , mevcut fiyata çok yakın

- komisyoncunuz ECN/STP tipi bir komisyoncudur, bu durumda ilk önce zararı durdur ile bir emir vermeniz ve 0'a ayarlanmış kar almanız gerekir ve sadece bir emir açıldığında zararı durdur ve / veya kar almayı değiştirebilirsiniz. istenen değerler (elbette önceki noktayı onurlandırarak)

pearl1:
Merhaba!

Birisi bana neden Stoploss'u Sırayla ekleyemediğimi söyleyebilir mi bilet gönder?

Taktığımda EA çalışmıyor!

Teşekkürler!
 

Herkese merhaba, grafikteki en son güncel fiyatı nasıl alacağımı kontrol etmek istiyorum. Acemi olduğunu biliyorum ama cevapları bulamıyorum. Lütfen yardım et. Teşekkürler.

Saygılarımızla

teras

 

...

Hangisi olduğuna bağlı:

- mevcut teklif Fiyat Tekliftir

- mevcut talep fiyatı Ask

- başka herhangi bir fiyat : mevcut fiyat için sıfır indeksini kullanın, bu nedenle Kapat[0] mevcut kapanış, Open[0] mevcut açılış vb.

tkuan77:
Herkese merhaba, grafikteki en son güncel fiyatı nasıl alacağımı kontrol etmek istiyorum. Acemi olduğunu biliyorum ama cevapları bulamıyorum. Lütfen yardım et. Teşekkürler.

Saygılarımızla

teras
 

Merhaba Mladen, Yapmaya çalıştığım şey bir çek . Örneğin, mevcut fiyat SMA 100'ün üzerindeyse, daha düşük bir zaman dilimine yakınlaştıracağım ve yalnızca satın alma sinyaline bakacağım. Ancak Bid veya Ask kullanırsam, sistem şu anda Bid'den beri uzun mu yoksa kısa mı baktığıma karar veremez ve tam tersi de Ask için aramalıyım (burada yanlışsam beni düzeltin).

Aklımdaki konsept, kontrol bölümündeki 3 ördek ticaret sistemine biraz benziyor. Lütfen bana burada tavsiyede bulunun. Teşekkürler.

Saygılarımızla

teras

mladen:
Hangisi olduğuna bağlı:
- mevcut teklif Fiyat Tekliftir

- mevcut talep fiyatı Ask

- başka herhangi bir fiyat : mevcut fiyat için sıfır indeksini kullanın, bu nedenle Kapat[0] mevcut kapanış, Open[0] mevcut açılış vb.

 

...

teras

Bu durumda Kapat[0] kullanın. Hemen hemen her EA bu amaçla close kullanıyor, bu yüzden sizin için de işe yarayacağını düşünüyorum

tkuan77:
Merhaba Mladen, Yapmaya çalıştığım şey bir çek. Örneğin, mevcut fiyat SMA 100'ün üzerindeyse, daha düşük bir zaman dilimine yakınlaştıracağım ve yalnızca satın alma sinyaline bakacağım. Ancak Bid veya Ask kullanırsam, sistem şu anda Bid'den beri uzun mu yoksa kısa mı baktığıma karar veremez ve tam tersi de Ask için aramalıyım (burada yanlışsam beni düzeltin).

Aklımdaki konsept, kontrol bölümündeki 3 ördek ticaret sistemine biraz benziyor. Lütfen bana burada tavsiyede bulunun. Teşekkürler.

Saygılarımızla

teras
 

EA, fiyat hareketleri arasında çalışmıyor

EA'mın M1 zaman diliminde hareket eden fiyatlar arasında çalışmadığını fark ettim. EA'nın her gelen tik tarafından yürütüleceğini biliyorum.

Ama her yeni bar başladığında yürütüldüğünü gördüm.

yanlış mı anlıyorum?

ea kuvvetinin gelen her keneyi etkinleştirme şekli var mı?

Kâr ve zararımı, kâr ve zararı kullanarak kontrol etmeye çalışırım. pip olarak değil. Ani artış gerçekleştiğinde EA, yeni çubuk oluşana kadar kar veya zararı belirlemeye ulaştığınızda siparişi kapatmayın.

Herkes bu sorunu çözmeme yardım etsin.

EA kodlamasında yeniyim.

Şimdiden teşekkür ederim.

Neden: