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 habe den Parameter use moneymanagement auf false.... gesetzt, aber bei den Lots-Parametern geht es nicht um die Lots, sondern um die Anzahl der offenen Orders. ich möchte nicht, dass die Ea mehr als 5 Orders......zu einem bestimmten Zeitpunkt öffnet, deshalb habe ich den Parameter NumberofTrades auf 5 gesetzt, bei den Input-Parametern, aber sie wird mich immer noch herausfordern und mehr als 5 Orders annehmen und damit mein Moneymanagement bedrohen!
Mastercash
Dies ist das Ergebnis eines Tests:
Wie Sie sehen können, hat es nie mehr als 5 Aufträge für das gleiche Symbol und die gleiche magische Zahl zur gleichen Zeit geöffnet
ok, ich kann sehen...Ich möchte nur nicht, dass es mehr als 5 Aufträge für verschiedene Symbole nimmt....e.g, sagen wir, es gibt Handelssignale von 10 Symbolen innerhalb der letzten 20 Minuten....the ea sollte nur die ersten 5 Handelssignale nehmen, dann, wenn einer dieser fünf um zu schließen, kann er eine weitere nehmen, um sicherzustellen, dass die aktuelle laufende Aufträge über verschiedene Symbol nicht überschreiten 5.but es halten auf 5 überschreiten, egal.....Sometimes es nimmt 5 gleiche Aufträge aus dem gleichen Symbol, das auch falsch ist.
Mastercash
Dies ist ein Ergebnis des Tests:
Wie Sie sehen können, hat es nie mehr als 5 Aufträge für dasselbe Symbol und dieselbe magische Zahl zur gleichen Zeit eröffnet.ok, ich kann sehen...Ich will nur nicht, dass es mehr als 5 Aufträge für verschiedene Symbole nimmt....z.B., sagen wir, es gibt Handelssignale von 10 Symbolen innerhalb der letzten 20 Minuten....der EA sollte nur die ersten 5 Handelssignale nehmen, dann, wenn einer dieser fünf Aufträge schließen, kann er einen weiteren nehmen, um sicherzustellen, dass die aktuellen laufenden Aufträge über verschiedene Symbole nicht 5 überschreiten.Aber es halten auf 5 zu überschreiten, egal.....Manchmal nimmt es 5 gleiche Aufträge aus dem gleichen Symbol, das auch falsch ist.
Wenn Sie wollen, dass der EA maximal 5 Aufträge für alle Symbole hat, gehen Sie zu Zeile 144(if( OrderSymbol() != Symbol() ) continue;) und löschen Sie sie. Und lassen Sie die magische Zahl für alle Instanzen auf allen Symbolen gleich (so kann er nur die von diesem EA auf allen Symbolen eröffneten Aufträge zählen).
Hallo Mladen
ich habe einen schönen Indi, der nicht aktualisiert wird, wenn er auf einen höheren TF gesetzt wird.
Wie Sie auf dem Chart sehen können, wenn ich nicht bearbeiten, bleibt es stecken. Könntest du helfen, dieses Problem zu lösen?
Ich füge den Indikator und ein Bildschirmfoto hinzu
Hallo Mladen
Ich habe eine schöne indi, die nicht erfrischend ist, wenn auf einem höheren TF gesetzt.
Wie Sie auf dem Chart sehen können, wenn ich nicht bearbeiten, es bleibt stecken. Könnten Sie helfen, dieses Problem zu lösen?
ich füge den Indikator und einen Screenshot hinzuwolfsch
Das kann nur im visuellen Backtest passieren (das ist ein Fehler, den Metatrader seit mindestens 7-8 Monaten nicht korrigiert hat, und es ist ein Fehler von Metatrader, nicht des Indikators) und es passiert bei allen Multi-Time-Frame-Indikatoren im visuellen Backtest
Bei normalem Gebrauch funktioniert der Indikator gut (ich habe ihn gerade vorsichtshalber getestet, und alles funktioniert so, wie es auf normalen Charts funktionieren soll)
Danke, ich werde daran arbeiten und mich bei Ihnen melden......
Wenn Sie möchten, dass der EA maximal 5 Aufträge für alle Symbole hat, gehen Sie zu Zeile 144(if( OrderSymbol() != Symbol() ) continue;) und löschen Sie sie. Und lassen Sie die magische Zahl für alle Instanzen auf allen Symbolen gleich (so dass es nur die von diesem EA eröffneten Aufträge auf allen Symbolen zählen kann)
TFI
Puffer 3 ist der richtige (das ist der "Trend"-Puffer, der die Werte 1 für Aufwärtsneigung und -1 für Abwärtsneigung hat). Sie verwenden die Verschiebungen 1 und 2, daher testet er den 1. geschlossenen Balken.
Der Kaufteil des Codes ist in Ordnung.
Sie haben Folgendes ausgelassen
if(trendc!=trendp)
aus dem Verkaufsteil Ameise, die Ihnen ein Problem bereiten könnteHallo Mladen,
vielen Dank für deine Hilfe. Ich habe den Code entsprechend
Ich habe den Code entsprechend Deines Vorschlags geändert, es läuft reibungslos, auch die Pip-Berechnung ist in Ordnung.
Aber jetzt eröffnet er keine Short Trades mehr (könnte auch eine Strategie sein ;-)).
Es werden nur noch Long-Positionen geschlossen.
Könnten Sie bitte noch einmal einen Rat geben?
extern double maxshorttrades = 2;
extern double maxlongtrades = 2;
//+-----------------------------------------------------+
//| BUY |
//+-----------------------------------------------------+
for (i=OrdersTotal()-1;i>=0; i--)
if(OrderType()==OP_BUY && OP_BUY<maxlongtrades) break; // Check Traded Positions.
{
if(trendc!=trendp)
{
if(trendc==1 && (CCIFilter<80)) // code for buy
OpenBuy();
return(0);
}
openedOrders++;
}
//+----------------------------------------------------+
//| SELL |
//+----------------------------------------------------+
for (i=OrdersTotal()-1;i>=0; i--)
if(OrderType()==OP_SELL && OP_SELL<maxshorttrades) break; // Check Traded Positions.
{
if(trendc!=trendp)
{
if(trendc==-1 && (CCIFilter>80)) // code for sell
OpenSell();
return(0);
}
openedOrders++;
}
}
Bitte sehen Sie den beigefügten Screenshot für Details.
Vielen Dank im Voraus!
Mit freundlichen Grüßen,
TFI
Hallo Mladen,
vielen Dank für Ihre Hilfe. Ich habe den Code entsprechend
Ich habe den Code nach Ihrem Vorschlag geändert, es läuft reibungslos, auch die Pip-Berechnung ist in Ordnung.
Aber jetzt eröffnet er keine Short Trades mehr (könnte auch eine Strategie sein ;-)).
Es werden nur noch Long-Positionen geschlossen.
Könnten Sie bitte noch einmal einen Rat geben?
extern double maxshorttrades = 2;
extern double maxlongtrades = 2;
//+-----------------------------------------------------+
//| BUY |
//+-----------------------------------------------------+
for (i=OrdersTotal()-1;i>=0; i--)
if(OrderType()==OP_BUY && OP_BUY<maxlongtrades) break; // Check Traded Positions.
{
if(trendc!=trendp)
{
if(trendc==1 && (CCIFilter<80)) // code for buy
OpenBuy();
return(0);
}
openedOrders++;
}
//+----------------------------------------------------+
//| SELL |
//+----------------------------------------------------+
for (i=OrdersTotal()-1;i>=0; i--)
if(OrderType()==OP_SELL && OP_SELL<maxshorttrades) break; // Check Traded Positions.
{
if(trendc!=trendp)
{
if(trendc==-1 && (CCIFilter>80)) // code for sell
OpenSell();
return(0);
}
openedOrders++;
}
}
Bitte sehen Sie den beigefügten Screenshot für Details.
Vielen Dank im Voraus!
Mit freundlichen Grüßen,
TFITFI
Versuchen Sie etwas in der Art :
extern double maxlongtrades = 2;
//-----------------------------------------------------
//
//-----------------------------------------------------
int clongs = 0;
int cshorts = 0;
for (i=OrdersTotal()-1;i>=0; i--)
{
if(OrderType()==OP_BUY) clongs++; // Check Long Traded Positions.
if(OrderType()==OP_SELL) cshorts++; // Check Short Traded Positions.
}
if(trendc!=trendp)
{
if(clongs < maxlongtrades && trendc== 1 && (CCIFilter<80)) OpenBuy();
if(cshorts 80)) OpenSell();
// Check the CCI condition
// it is not symetrical to buy condition
}
mladen,
Ich habe die Änderung in Nummer 144 vorgenommen und die magische Zahl "MagicNumber" über die Symbole hinweg vereinheitlicht. Instanzen....It nimmt nun maximal 5 Trades auf einmal an, aber es wiederholt nun Trades für dasselbe Symbol zur gleichen Zeit, z.B. wenn es ein SELL-Handelssignal für EURUSD erhält, wird es diesen EURUSD-Verkaufsauftrag 5 Mal platzieren. Sehen Sie sich das Bild der Live-Order an, die auf diese Weise ausgeführt wurde:
Vielen Dank, ich werde daran arbeiten und mich bei Ihnen melden......
mladen, ich habe die Änderung in Nummer 144 vorgenommen und die magische Zahl "MagicNumber" über die Symbole hinweg vereinheitlicht. .... nimmt nun maximal 5 Trades auf einmal an, aber es wiederholt nun Trades für das gleiche Symbol zur gleichen Zeit, z.B. wenn es ein SELL-Handelssignal für EURUSD erhält, wird es diesen EURUSD-Verkaufsauftrag 5 Mal platzieren. Sehen Sie sich das Bild des Live-Auftrags an, der auf diese Weise ausgeführt wurde:
Das hängt nicht von diesem Codeteil ab
Sie müssen im Rest des Codes eine Prüfung einfügen, um zu verhindern, dass ein Auftrag für denselben Balken und dasselbe Symbol geöffnet wird.