Fragen Sie! - Seite 69

 

Hallo!

Kann mir jemand sagen, was mit diesem Code falsch ist?

Es wird überhaupt kein Auftrag geöffnet?

Ich habe ihn am 2007.01.03 zurückgetestet.

Vielen Dank

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));

}
 

Ich kann die MQ4-Datei für den Indikator nicht finden

Ich hoffe, dass mir jemand bei etwas helfen kann, von dem ich ursprünglich dachte, dass es ganz einfach wäre. Ich wollte einen Indikator, der eigentlich mit Metatrader geliefert wird, mit einem akustischen Alarm versehen, so dass er mir mitteilt, wenn er ein bestimmtes Niveau erreicht. Der Indikator ist Force Index, aber ich kann nirgendwo im Ordner Experts/Indicators eine MQ4-Datei dafür finden. Hat jemand eine Idee, wo ich die Datei finden könnte?

Wenn ich die MQ4-Datei finden kann, gehe ich davon aus, dass ich den von Codersguru am Anfang dieses Threads angegebenen Code verwenden kann, um eine Warnmeldung hinzuzufügen?

Danke

 

ref Previous Post

Ich habe es geschafft, mein Problem aus dem obigen Beitrag zu lösen.

Vielen Dank an alle für das Interesse.

 
Hartadi:
Hallo,

Kann mir jemand sagen, was mit diesem Code falsch ist?

Es wird überhaupt kein Auftrag geöffnet?

Ich habe ihn am 2007.01.03 zurückgetestet.

Vielen Dank

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

Sie können nicht zum Geldkurs kaufen.

 

@Michel :

Oh mein Gott... wie dumm ich bin...

Dankeschön..

 

Hilfe beim Heckenbau

Hallo zusammen!

Ich habe den Expert Advisor Builder auf sufx.com verwendet, um einen EA zu erstellen. Es hat zwei Einschränkungen, die ich versuche, loszuwerden:

1. Es wird immer nur 1 Handel gleichzeitig geöffnet. Ich kann ihn dazu bringen, zwei Geschäfte gleichzeitig zu öffnen, aber ich kann ihn nicht dazu bringen, einen Kauf- und einen Verkaufsauftrag gleichzeitig zu öffnen.

2. scheint Verkaufsaufträge gegenüber Kaufaufträgen zu bevorzugen. Dies wäre kein wirkliches Problem, wenn Problem Nr. 1 gelöst wäre.

Hier ist das Codestück, das mich aufzuhalten scheint:

//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

Irgendwelche Vorschläge? Ich würde gerne so viele Trades wie möglich öffnen lassen und in der Lage sein, Kauf- und Verkaufsaufträge gleichzeitig zu öffnen, wenn die Indikatoren dies vorgeben.

Vielen Dank für die Hilfe,

Benjimang

 

Gewinn/Verlust der Währung

Dave,

Ich denke, Sie sollten Ihre Fragen etwas genauer formulieren. Und übrigens, warum antworten Sie nicht auf PMs? Wo verstecken Sie sich heutzutage? lol

P in KC

 
FX4$$$:
Dave,

Ich denke, Sie müssen genauer sagen, worum Sie bitten. Und übrigens, warum antwortest du nicht auf PMs? Wo versteckst du dich heutzutage? lol

P in KC

Ich habe keine neuen PM's erhalten???? Leider hatte ich in dieser Zeit einen familiären Notfall, der sich ereignet hat - Alles ist gut mit dem Notfall. Ich könnte immer noch Hilfe bei der Kodierung gebrauchen, besonders bei der Kodierung der Umschläge.

Dave

 

Wie kann ich den Gewinn einer Währung oben rechts im Diagramm anzeigen?

Ich möchte den Gewinn/Verlust einer Währung oben rechts im Währungsdiagramm der Handelsplattform (EURUSD) anzeigen lassen. Wenn der Gewinn des aktuellen Handels positiv ist, würde er in grün angezeigt werden; wenn er 0,00 ist, würde er in weiß angezeigt werden; wenn er ein Verlust ist, würde er in rot angezeigt werden.

Ich weiß, dass ObjectCreate der richtige Weg ist, aber darüber hinaus weiß ich nicht, wie ich den Gewinn von der Handelsplattform erfassen kann. Kann mir jemand bei diesem Dienstprogramm behilflich sein? Ich möchte dies in mein Ea einbauen.

Thanks!

Dave

<<<
 

Handelsstatistiken

Verwenden Sie diesen Code:

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

int stats()

{

int i, vOrders;

// aktueller CP-Gewinn

vOrders = OrdersTotal();

Gewinn = 0;

PipsGewinn = 0;

for(i=vOrders-1;i>=0;i--)

{

if(OrderSelect(i, SELECT_BY_POS, MODE_TRADES))

{

if(OrderSymbol() == Symbol())

{

Gewinn += OrderProfit();

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

else if (OrderType() == OP_SELL) PipsProfit += ((OrderOpenPrice() - Ask)/Point);

}

}

}

// Potenzielles Risiko

// maximale Positionen

}

Profit & PipsProfit müssen außerhalb des Programms deklariert werden und dann mit Ihrer bevorzugten Methode auf dem Bildschirm angezeigt werden. Kommentare, wenn sonst nichts.

Mark

Grund der Beschwerde: