Wie programmiert man? - Seite 343

 
techmac:
Versteckte Stop Loss und Take Profit sind riskant. Wenn der EA nicht funktioniert, kann nichts Ihren EA schließen - und EAs können von der Brokerseite aus gestoppt werden

Lieber techmac,

können Sie mehr erklären, warum EA nicht funktioniert, wenn EAs nicht dutzende Male geprüft und getestet werden, bevor sie auf Live im Allgemeinen oder auf VPS........... (nichts kann Ihren EA schließen) nicht verstanden haben, was Sie meinen ??? ....(and EAs can be stopped from the broker side)....for what other reasons broker can stop it when EA is applied with the brokers permission/agreeing. if you means due to some of hidden parameters reasons ?

Grüße

 
mladen:
Ja. Wenn das Stop-Loss-Feld der Order auf einen bestimmten Wert gesetzt ist (dann wird diese Zeile angezeigt) und wenn es in der Verantwortung des Brokers liegt, den Stop-Loss zum gewünschten Preis auszuführen (im Gegensatz zum "weichen" "versteckten" Stop-Loss, wenn es Ihr EA ist, der die Order schließen muss)

Liebste MLADEN,

vielen Dank, sehr freundlich von Ihnen, verstehen Sie genau, wie das in der Praxis funktioniert.

Gibt es irgendeine Möglichkeit, dass unser EA versucht, TP/SL im Falle von versteckten sl/tp an einem bestimmten Punkt/Level auszuführen und einige versteckte Aktivitäten (codiert in der Brokersoftware, die die Handelsaktivitäten der Kunden bearbeitet, die weitere Verarbeitung zulässt oder verweigert) von der Brokerseite dies verhindern?

lol, so in diesem Fall, wer ist mehr zuverlässig, effektiv und verantwortlich EA oder Broker... ....as für den Ruf der Makler jetzt ein Tag... soft wares und nicht menschliche Gefühle Geräte sind mehr aufrichtig und loyal. .

Grüße

 
mntiwana:
Liebste MLADEN,

Danke, so freundlich, genau zu verstehen, wie das in Wirklichkeit funktionieren.

lol, so in diesem Fall, wer ist mehr zuverlässig, effektiv und verantwortlich EA oder Broker... ....as für den Ruf der Makler jetzt ein Tag... weiche Waren und nicht menschliche Gefühle Geräte sind mehr aufrichtig und loyal. .

mit freundlichen Grüßen

Die Sache ist die folgende:

Im Falle der SNB, wenn die Leute "versteckte" "weiche" Stop-Loss verwendet haben, hatten sie keinen Grund, irgendetwas zurückerstattet zu bekommen (da sie das Stop-Loss-Feld nicht ausgefüllt haben, war der Broker nicht verpflichtet, etwas mit diesen Aufträgen zu tun). Diejenigen, die das Stop-Loss-Feld ausgefüllt hatten, hatten hingegen auch einen Grund zur Beschwerde - nicht, dass sie alles zurückerhalten hätten, aber sie konnten zumindest etwas tun.

 
mladen:
Die Sache ist die folgende: Im Falle der SNB, wenn die Leute "versteckte" "weiche" Stop-Loss verwendet haben, hatten sie keinen Grund, irgendetwas erstattet zu bekommen (da sie das Stop-Loss-Feld nicht ausgefüllt haben, war der Broker nicht verpflichtet, etwas mit diesen Aufträgen zu tun). Diejenigen, die das Feld ausgefüllt hatten, hatten zwar auch einen Grund zur Beschwerde - sie bekamen zwar nicht alles zurück, aber sie konnten wenigstens etwas tun.

Liebster MLADEN,

noch einmal vielen Dank für Ihr fachkundiges Auge auf die Dinge....also alles in allem ....Händler Verlust ist zu bestätigen, aufgrund einer und nur ein lil bit Grund, wenn Gewinn ist zweifelhaft, in jeder und jeder Fall....Dinge gehen wie diese Art und Weise, jetzt ein days.it ist üblich.

Eine Frage Chef, wenn Marktpreis fallen oder steigen so schnell wie Lichtgeschwindigkeit....gibt es irgendeine Chance und Möglichkeit, dass alle unsere Verlustbrecher (BE, SL und Trailing Stop) könnte ignoriert / abgelehnt werden / durch ....oder....sie arbeiten effektiv mit allen Mitteln unter allen Umständen.

Gruß

 
mntiwana:
Liebste MLADEN,

noch einmal vielen Dank für Ihre Experten Auge auf die Dinge....so alles in allem ....Händler Verlust ist zu bestätigen, aufgrund einer und nur ein lil bit Grund, wenn Gewinn ist zweifelhaft, in jeder und jeder Fall....things gehen wie dieser Weg, jetzt ein days.it ist üblich.

Eine Frage Chef, wenn Marktpreis fallen oder steigen so schnell wie Lichtgeschwindigkeit....gibt es irgendeine Chance und Möglichkeit, dass alle unsere Verlustbrecher (BE, SL und Trailing Stop) könnte ignoriert / abgelehnt werden / durch ....oder....sie arbeiten effektiv mit allen Mitteln in jedem Fall.

mit freundlichen Grüßen

mntiwana

Das sollte nicht passieren, aber lesen Sie auf jeden Fall den Vertrag, den Sie mit Ihrem Broker haben. Im Vertrag müssen Angaben zu solchen Dingen gemacht werden.

 

Wie lässt sich die Kreuzung zweier Werte am einfachsten überprüfen?

 
apprentice coder:
Wie lässt sich die Kreuzung zweier Werte am einfachsten überprüfen?

Das hängt von den Werten ab, die Sie vergleichen wollen. Können Sie ein konkretes Beispiel nennen?

 
mladen:
Das hängt von den Werten ab, die Sie vergleichen wollen. Können Sie ein konkretes Beispiel nennen?

Zum Beispiel: Kreuzung von zwei Durchschnittswerten

 

Hallo, ich habe einige Probleme mit meinem EA und bin anscheinend in eine Sackgasse geraten. Wäre dankbar, wenn mir jemand in dieser Angelegenheit helfen könnte. Ich versuche, meine EA zu bekommen, nur 1 Handel pro Tag auslösen. Im Grunde ist dies ein Ausbruch EA, die einen Handel öffnen wird, sobald die Kerze ausbrechen durch eine certatin Menge von Pips. Allerdings kann ich nicht scheinen, um die EA zu bekommen, nur 1 Handel pro Tag auslösen.

Derzeit meine EA wird ein weiterer Handel auf die gleiche Kerze wieder auslösen, wenn die Bedingungen wieder erfüllt sind, nachdem mein Handel bereits TP oder SL.

Ich wäre dankbar, wenn mir jemand in dieser Angelegenheit helfen könnte. Danke!

Unten ist meine Programmierung.

Mit freundlichen Grüßen

//---- Eingabeparameter

extern double TakeProfit = 1000.0;

extern double Lots = 0.1;

extern double StopLoss = 980.0;

extern int Entry_Hour_1st = 21;

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

//| Experten-Initialisierungsfunktion |

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

int init()

{

//----

//----

return(0);

}

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

//| Experten-Deinitialisierungsfunktion |

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

int deinit()

{

//----

//----

return(0);

}

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

//| expert start function |

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

int start()

{

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

//-- Handel auslösen

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

int ticket, total;

double TP_Wert, SL_Wert;

total = OrdersTotal(); // Überprüfung der Gesamtzahl der derzeit offenen Trades

if(total < 1)

{

if (Hour()==Entry_Hour_1st && ((High[0] - High[1]) > 0.00100) && ((High[1] - Low[1]) > 0.00100))

{

wenn ((Close[1] - Open[1]) > 0,00100)

{

TP_Value = (Close[1] - Open[1]); // Wert des Long-Körpers

SL_Value = (Low[1] - 0.0010); // immer der gleiche Wert für Long

ticket=OrderSend(Symbol(),OP_BUY,Lots,Ask,1,SL_Value,Ask+TP_Value, "Mein EA",200,0,Green);

return(0);

}

wenn ((Open[1] - Close[1]) > 0,00100)

{

TP_Value = (Open[1] - Close[1]); // Wert des Short-Körpers

SL_Value = (Low[1] - 0.0010); // immer der gleiche Wert für Long

ticket=OrderSend(Symbol(),OP_BUY,Lots,Ask,1,SL_Value,Ask+TP_Value, "Mein EA",200,0,Green);

return(0);

}

if ((Open[1] - Close[1]) <= 0,00100)

{

TP_Value = (High[1] - Low[1]); // Wert der gesamten Kerze einschließlich Kopf und Fuß

SL_Value = (Low[1] - 0.0010); // immer der gleiche Wert für Long

ticket=OrderSend(Symbol(),OP_BUY,Lots,Ask,1,SL_Value,Ask+TP_Value, "Mein EA",200,0,Green);

return(0);

}

}

if (Hour()==Entry_Hour_1st && ((Low[1] - Low[0]) > 0,00100) && ((High[1] - Low[1]) > 0,00100))

{

//-------------------------------------------------------//

//-------- wenn H7 langer Kerzenkörper mehr als 10pips --------//

//-------------------------------------------------------//

wenn ((Close[1] - Open[1]) > 0,00100)

{

TP_Value = (Close[1] - Open[1]); // Wert des langen Körpers

SL_Value = (High[1] + 0.0010); // immer der gleiche Wert für Short

ticket=OrderSend(Symbol(),OP_SELL,Lots,Bid,1,SL_Value,Bid-TP_Value, "Mein EA",200,0,Red);

return(0);

}

if ((Open[1] - Close[1]) > 0,00100)

{

TP_Value = (Open[1] - Close[1]); // Wert des Shortkörpers

SL_Value = (High[1] + 0.0010); // immer der gleiche Wert für Short

ticket=OrderSend(Symbol(),OP_SELL,Lots,Bid,1,SL_Value,Bid-TP_Value, "Mein EA",200,0,Red);

return(0);

}

if ((Open[1] - Close[1]) <= 0,00100)

{

TP_Value = (High[1] - Low[1]); // Wert der gesamten Kerze einschließlich Kopf und Fuß

SL_Value = (High[1] + 0.0010); // immer derselbe Wert für Short

ticket=OrderSend(Symbol(),OP_SELL,Lots,Bid,1,SL_Value,Bid-TP_Value, "Mein EA",200,0,Red);

return(0);

}

}

}

return(0);

}

}

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

 
tkuan77:
Hallo, ich habe einige Probleme mit meinem EA und bin anscheinend in eine Sackgasse geraten. Ich wäre dankbar, wenn mir jemand in dieser Angelegenheit helfen könnte. Ich versuche, meinen EA dazu zu bringen, nur 1 Handel pro Tag auszulösen. Im Grunde ist dies ein Ausbruch EA, die einen Handel öffnen wird, sobald die Kerze ausbrechen durch eine certatin Menge von Pips. Allerdings kann ich nicht scheinen, um die EA zu bekommen, nur 1 Handel pro Tag auslösen.

Derzeit meine EA wird ein weiterer Handel auf die gleiche Kerze wieder auslösen, wenn die Bedingungen wieder erfüllt sind, nachdem mein Handel bereits TP oder SL.

Ich wäre dankbar, wenn mir jemand in dieser Angelegenheit helfen könnte. Danke!

Unten ist meine Programmierung.

Mit freundlichen Grüßen

//---- Eingabeparameter

extern double TakeProfit = 1000.0;

extern double Lots = 0.1;

extern double StopLoss = 980.0;

extern int Entry_Hour_1st = 21;

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

//| Experten-Initialisierungsfunktion |

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

int init()

{

//----

//----

return(0);

}

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

//| Experten-Deinitialisierungsfunktion |

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

int deinit()

{

//----

//----

return(0);

}

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

//| expert start function |

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

int start()

{

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

//-- Handel auslösen

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

int ticket, total;

double TP_Wert, SL_Wert;

total = OrdersTotal(); // Überprüfung der Gesamtzahl der derzeit offenen Trades

if(total < 1)

{

if (Hour()==Entry_Hour_1st && ((High[0] - High[1]) > 0.00100) && ((High[1] - Low[1]) > 0.00100))

{

wenn ((Close[1] - Open[1]) > 0,00100)

{

TP_Value = (Close[1] - Open[1]); // Wert des Long-Körpers

SL_Value = (Low[1] - 0.0010); // immer der gleiche Wert für Long

ticket=OrderSend(Symbol(),OP_BUY,Lots,Ask,1,SL_Value,Ask+TP_Value, "Mein EA",200,0,Green);

return(0);

}

wenn ((Open[1] - Close[1]) > 0,00100)

{

TP_Value = (Open[1] - Close[1]); // Wert des Short-Körpers

SL_Value = (Low[1] - 0.0010); // immer der gleiche Wert für Long

ticket=OrderSend(Symbol(),OP_BUY,Lots,Ask,1,SL_Value,Ask+TP_Value, "Mein EA",200,0,Green);

return(0);

}

if ((Open[1] - Close[1]) <= 0,00100)

{

TP_Value = (High[1] - Low[1]); // Wert der gesamten Kerze einschließlich Kopf und Fuß

SL_Value = (Low[1] - 0.0010); // immer der gleiche Wert für Long

ticket=OrderSend(Symbol(),OP_BUY,Lots,Ask,1,SL_Value,Ask+TP_Value, "Mein EA",200,0,Green);

return(0);

}

}

if (Hour()==Entry_Hour_1st && ((Low[1] - Low[0]) > 0,00100) && ((High[1] - Low[1]) > 0,00100))

{

//-------------------------------------------------------//

//-------- wenn H7 langer Kerzenkörper mehr als 10pips --------//

//-------------------------------------------------------//

wenn ((Close[1] - Open[1]) > 0,00100)

{

TP_Value = (Close[1] - Open[1]); // Wert des langen Körpers

SL_Value = (High[1] + 0.0010); // immer der gleiche Wert für Short

ticket=OrderSend(Symbol(),OP_SELL,Lots,Bid,1,SL_Value,Bid-TP_Value, "Mein EA",200,0,Red);

return(0);

}

if ((Open[1] - Close[1]) > 0,00100)

{

TP_Value = (Open[1] - Close[1]); // Wert des Shortkörpers

SL_Value = (High[1] + 0.0010); // immer der gleiche Wert für Short

ticket=OrderSend(Symbol(),OP_SELL,Lots,Bid,1,SL_Value,Bid-TP_Value, "Mein EA",200,0,Red);

return(0);

}

if ((Open[1] - Close[1]) <= 0,00100)

{

TP_Value = (High[1] - Low[1]); // Wert der gesamten Kerze einschließlich Kopf und Fuß

SL_Value = (High[1] + 0.0010); // immer derselbe Wert für Short

ticket=OrderSend(Symbol(),OP_SELL,Lots,Bid,1,SL_Value,Bid-TP_Value, "Mein EA",200,0,Red);

return(0);

}

}

}

return(0);

}

}

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

tkuan77

Sie müssen den letzten geschlossenen Balken finden und prüfen, ob der Tag des letzten geschlossenen Balkens mit dem aktuellen Tag identisch ist.

Sie können so etwas wie diese Funktion verwenden, um die letzte geschlossene Orderzeit zu ermitteln:

datetime GetLastClosedOrderTime()

{

datetime CloseTime = 0;

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

{

if (OrderSelect(i,SELECT_BY_POS,MODE_HISTORY))

if (OrderSymbol() == Symbol() && OrderMagicNumber() == MagicNumber && OrderCloseTime()>CloseTime)

CloseTime = OrderCloseTime();

}

return(CloseTime);

}

Und dann können Sie prüfen, ob das Datum dasselbe ist