Sormak! - sayfa 69

 

Merhaba,

Biri bana bu kodda neyin yanlış olduğunu söyleyebilir mi?

Hiç sipariş açmıyor mu?

2007.01.03'te tekrar test ediyorum

Şerefe

extern string StrGetPosition = "19:55";

extern string StrStartOrderTime = "20:00";

extern string StrEndOrderTime = "23:59";

extern double MyBidPrice = 1.3271;

int CountOrder = 0, BuyMagicNumber, SellMagicNumber;

extern double Lots = 1;

extern int StopLoss = 35;

extern int TakeProfit = 8;

extern bool FlagBuy = false;

int x, b, FindMagicSell, TicketSell, FindMagicBuy, TicketBuy;

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

//| expert initialization function |

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

int init()

{

//----

MyBidPrice = 1.3271;

//----

return(0);

}

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

//| expert deinitialization function |

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

int deinit()

{

//----

//----

return(0);

}

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

//| expert start function |

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

int start()

{

//----

int GetPosition, StartOrderTime, EndOrderTime, o;

GetPosition = StrToTime(StrGetPosition);

StartOrderTime = StrToTime(StrStartOrderTime);

EndOrderTime = StrToTime(StrEndOrderTime);

if (TimeCurrent() >= StartOrderTime && TimeCurrent() <= EndOrderTime)

{

FlagBuy = true;

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

//| Posisi BUY

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

if (FlagBuy == true)

{

if ((MyBidPrice == Bid) && (CountOrder < 6))

{

CountOrder++;

BuyMagicNumber = StrToInteger("1" + CountOrder + Day() + Month() + Year());

o = OrderSend(Symbol(),OP_BUY,Lots,Bid,3,Bid-StopLoss*Point,Bid+TakeProfit*Point,"Test",BuyMagicNumber,0,Green);

if (o < 1) MessageBox("ERROR!!");

if (CountOrder > 1) ModifyBuy();

if (CountOrder == 5) FlagBuy = false;

MyBidPrice = Bid - (2*Point);

}

ShowComment();

}

}

//----

return(0);

}

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

void ModifyBuy()

{

for (x = 1; x < CountOrder; x++)

{

FindMagicBuy = StrToInteger("1" + x + Day() + Month() + Year());

for (b = 0; b < OrdersTotal(); b++)

{

OrderSelect(b,SELECT_BY_POS, MODE_TRADES);

if (OrderMagicNumber() == FindMagicBuy)

{

TicketBuy = OrderTicket();

OrderSelect(TicketBuy,SELECT_BY_TICKET);

OrderModify(OrderTicket(),OrderOpenPrice(),OrderStopLoss(),OrderTakeProfit()-(2*Point),0);

break;

}

}

}

}

void ShowComment()

{

Comment("DayOfWeek = ",DayOfWeek(),"\nFLAG BUY : ",FlagBuy,"\nCount Order ",CountOrder,"\nNext order = ",MyBidPrice,"\nBID = ",Bid,"\nTime : ",TimeToStr(TimeCurrent(),TIME_MINUTES));

}
 

Gösterge İçin MQ4 Dosyası Bulunamıyor

Umarım birileri bana başlangıçta oldukça basit olacağını düşündüğüm bir konuda yardımcı olabilir. Aslında Metatrader ile birlikte gelen bir göstergeye sesli bir uyarı koymak istedim, böylece belirli bir seviyeye ulaştığında bana söyleyecektir. Gösterge Force Index'tir, ancak bunun için Uzmanlar/Göstergeler klasöründe hiçbir yerde bir MQ4 dosyası bulamıyorum. Dosyayı nerede bulabileceğime dair bir fikri olan var mı?

Eğer mq4 dosyasını bulabilirsem, bu konunun başında Codersguru tarafından verilen kodu bir uyarı eklemek için kullanabileceğimi varsaymakta haklı mıyım?

Teşekkürler

 

referans Önceki Yazı

Yukarıdaki yazıdan sorunumu çözmeyi başardım.

İlgi için herkese teşekkürler.

 
Hartadi:
Merhaba,

Biri bana bu kodda neyin yanlış olduğunu söyleyebilir mi?

Hiç sipariş açmıyor mu?

2007.01.03'te tekrar test ediyorum

Şerefe

o = OrderSend(Symbol(),OP_BUY,Lots,Bid,3,Bid-StopLoss*Point,Bid+TakeProfit*Point,"Test",BuyMagicNumber,0,Green);

Teklif fiyatından satın alamazsınız.

 

@Michel :

Aman tanrım... ne kadar aptalım..

teşekkür ederim..

 

Hedging ile ilgili yardım

Herkese selam!

Bir EA oluşturmak için sufx.com adresindeki Expert Advisor Builder'ı kullandım. Kurtulmaya çalıştığım iki sınırlaması var:

1. Bir seferde sadece 1 işlem açar. Aynı anda iki işlemin açılmasını sağlayabilirim, ancak aynı anda hem alış hem de satış emri açmasını sağlayamıyorum.

2. Alış emirleri yerine satış emirlerini tercih ediyor gibi görünüyor. 1 numaralı sorun çözülmüş olsaydı, bu gerçekten bir sorun olmazdı.

İşte beni tutuyor gibi görünen kod parçası:

//Check position

bool IsTrade = False;

for (int i = 0; i < Total; i ++) {

OrderSelect(i, SELECT_BY_POS, MODE_TRADES);

if (OrderType() <= OP_SELL && OrderSymbol() == Symbol()) {

IsTrade = True;

if (OrderType() == OP_BUY) {

//Close

Baska öneri? Mümkün olduğu kadar çok işlem açmasına izin vermek ve göstergeler öyle diyorsa aynı anda alım ve satım emirleri açabilmek istiyorum.

yardım için teşekürler,

Benjimang

 

Döviz Kar/Zararı

Dave,

Bence ne istediğin konusunda daha spesifik olmalısın. Ve BTW neden PM'lere cevap vermiyorsunuz? Bu aralar nerede saklanıyorsun??? çok komik

KC'de P

 
FX4$$$:
Dave,

Bence ne istediğin konusunda daha spesifik olmalısın. Ve BTW neden PM'lere cevap vermiyorsunuz? Bu aralar nerede saklanıyorsun??? çok komik

KC'de P

Yeni PM almadım???? Ne yazık ki bu süre zarfında bir ailevi acil durum yaşadım - Acil durumda her şey yolunda. Kodlamamda, özellikle de zarf kodlamasında yardımı kullanabilirim.

Dave

 

Grafiğin sağ üst köşesinde para biriminin karını nasıl yayınlarım?

Döviz kar/zararını ticaret platformu döviz grafiğinin (EURUSD) sağ üst köşesinde yayınlamak istiyorum. Mevcut ticaretin karı pozitifse, yeşil renkte gösterilir; 0,00 ise beyaz görünür; Eğer bir kayıp ise, kırmızı ile gösterilir.

ObjectCreate'in gidilecek yol olduğunu biliyorum, ancak bunun ötesinde ticaret platformundan nasıl kâr elde edeceğimi bilmiyorum? Birisi bana bu yardımcı program hakkında yardım edebilir mi? Bunu ea'ma dahil etmek istiyorum.

Teşekkürler!

Dave

<<<
 

ticaret istatistikleri

bu kodu kullanın:

// ******************************************************* ******************************

int istatistikler()

{

int i, vSiparişler;

// mevcut CP karı

vOrders = OrdersTotal();

Kar = 0;

PipKar = 0;

for(i=vSiparişleri-1;i>=0;i--)

{

if(OrderSelect(i, SELECT_BY_POS, MODE_TRADES))

{

if(OrderSymbol() == Symbol())

{

Kar += OrderProfit();

if (OrderType() == OP_BUY) PipsProfit += ((Bid - OrderOpenPrice())/Point);

else if (OrderType() == OP_SELL) PipsProfit += ((OrderOpenPrice() - Sor)/Puan);

}

}

}

// potansiyel risk

// maksimum konumlar

}

Profit & PipsProfit'in program dışında bildirilmesi ve ardından favori yönteminizle ekranda gösterilmesi gerekecektir. Başka bir şey yoksa yorumlar.

İşaret