Jede Anfängerfrage, um das Forum nicht zu überladen. Fachleute, gehen Sie nicht vorbei. Nirgendwo ohne dich - 6. - Seite 756
Sie verpassen Handelsmöglichkeiten:
- Freie Handelsapplikationen
- Über 8.000 Signale zum Kopieren
- Wirtschaftsnachrichten für die Lage an den Finanzmärkte
Registrierung
Einloggen
Sie stimmen der Website-Richtlinie und den Nutzungsbedingungen zu.
Wenn Sie kein Benutzerkonto haben, registrieren Sie sich
Ich bin an mein eigenes Archivierungssystem gewöhnt.
Guten Tag.
Ich habe ein Übungsprogramm geschrieben. Aus irgendeinem Grund funktioniert es nicht.
Ich habe sie zwischen dem 29. September und dem 15. Oktober im Strategietester getestet.
Das Programm sollte folgendermaßen funktionieren: Ich mache einen Kauf. Wenn der Kurs um 0,010 fällt, sollte er mit Verlust verkaufen.
Es kommt zu einem Kauf. Es findet kein Verkauf statt. Ich beginne mit der Visualisierung und sehe, dass der Preis nicht nur um 0,010 niedriger, sondern viel höher ist. Seltsam.
// -------- Variablen --- Start -----
extern double L1=0.01; // Losgröße für den Kauf
extern double L1n=0.01; // Losgröße für den Kauf (normalisiertes Los)
extern double AktualAsk=0.0; // aktueller Geldkurs
extern double AktualBid=0.0; // tatsächlicher Verkaufspreis
extern int int ticketlackmus=1; // Indikator für erfolgreiche Auftragseröffnung.
extern int ticket1=0; // ticket
extern bool PozOtk1=true;
// -------- Variablen --- Ende -----
int init()
{
zurück(0);
}
int start()
{
wenn (PozOtk1==true)
{
//offene Position
ticketlackmus=1;
while (ticketlackmus>0)
{
Alert ("Erste Position öffnen");
RefreshRates();// Daten aktualisieren
AktualAsk=NormalizeDouble(Ask,Digits); //für Preis
L1n=NormalizeDouble(L1,2); //für die Partie.
ticket1=OrderSend ("GBPUSD", OP_BUY, L1n, AktualAsk, 5, 0, 0, 0, 0, CLR_NONE);
if (ticket1>0) ticketlackmus=-1;
{
Alert (" ORDER OPEN ", ticket1, ", ticketlackmus);
}
}
PozOtk1=false;
Alert (" PozOtk1 ", PozOtk1);
}
RefreshRates();// RefreshRates()
AktualBid=NormalizeDouble(Bid,Digits); //für Preis
if (AktualBid<=AktualAsk-0.010 && PozOtk1==false)
{
RefreshRates(); // Daten auffrischen
OrderSelect(ticket1, SELECT_BY_TICKET;)
L1n=NormalizeDouble(L1,2); //für die Partie
OrderClose (ticket1, L1n, AktualBid, 5);
PozOtk1=true;
}
zurück(0);
}
int deinit()
{
zurück(0);
}
Ozero.
Bitte verwenden Sie beim Einfügen des Codes die magische SRC-Taste:
Code korrekt in das Forum einfügen
Wenn eine Position auf ein bestimmtes Symbol (in diesem Fall "GBPUSD") eröffnet wird , dann ist es ratsam, alle Daten auch für dieses Symbol über marketinfo zu übernehmen, d.h. nicht nur AktualAsk=NormalizeDouble(Ask,Digits ); aktualAsk=MarketInfo( "GBPUSD",MODE_ASK);
Und so sollten alle Marktdaten genommen werden, um zu vermeiden.
Wenn eine Position auf ein bestimmtes Symbol (in diesem Fall "GBPUSD") eröffnet wird , dann ist es ratsam, alle Daten auch auf dieses Symbol über MarketInfo zu übernehmen, d.h. nicht nur AktualAsk=NormalizeDouble(Ask,Digits); aktualAsk=MarketInfo( "GBPUSD",MODE_ASK);
Und so sollten alle Marktdaten genommen werden, um zu vermeiden.
Vielen Dank, Evillive!
Ich habe Änderungen vorgenommen. Aber ich habe bereits mit dem Kauf begonnen. Kein Verkauf nach den Änderungen. M15-Test vom 30. September 2014 bis Mitte Oktober.
Danke, Evillive!
Ich habe die Änderung vorgenommen. Aber der Kauf wurde trotzdem getätigt. Kein Verkauf nach der Änderung. M15-Test vom 30. September 2014 bis Mitte Oktober.
OrderClose (ticket1, L1n, AktualBid, 5);