10Punkte 3.mq4 - Seite 92

 

Hallo yeoeleven,

vielen Dank für Ihre Antwort und Ihre Ratschläge.

Ich werde sie befolgen

 
forex4syg:
Es scheint einen Fehler in Jugulator für die Berechnung von ActualOrders.

In meinem Test wurde nur eine Position für GBPJPYm zu einem bestimmten Zeitpunkt eröffnet. Sie wurde aufgrund von ConfirmedOrders=1 und ActualOrders=2 geschlossen.

Ich bin mir nicht sicher, woher dieses Problem kommt. Im Code scheint ActualOrders immer um 1 zu steigen, wenn eine Order gesendet wird. Wenn die SendOrder fehlschlägt (aus verschiedenen Gründen), würde ActualOrders trotzdem um 1 steigen. Vielleicht ist es besser, den Fehler von SendOrder zu überprüfen. Wenn kein Fehler auftritt, dann erhöht sich ActualOrders um 1.

Vielen Dank!

Das sollte hier behoben werden (Seite 89, Beitrag 890, Jugulator.zip). Es gibt eine neue Variable im EA, die auf die Auftragsnummer gesetzt wird. Wenn der Auftrag fehlschlägt, sollte es keine Auftragsnummer geben, und der Code prüft dies, bevor er die Variable ActualOrders erhöht.

void OrderNeedsOpening() {

//Wert vor dem Ändern aufbewahren

double TempActualLotSize = ActualLotSize;

//Losgröße erhöhen

ActualLotSize = NormalizeDouble(ActualLotSize * LotsIncreaseBy, LotPrecision);

//Versuchen wir, long zu gehen?

if (OrderDirection == 1) {

//Setzen Sie den Take Profit und eröffnen Sie einen Long-Auftrag

ActualTP = Ask + (TakeProfit * Point);

LastTicket = OrderSend(Symbol(), OP_BUY, ActualLotSize, Ask, OrderSlippage, ActualSL, ActualTP, "Order" + (ActualOrders + 1), Magic, 0, Blue);

}

//Versuchen wir, short zu gehen?

else if (OrderDirection == 2) {

/ /Take Profit setzen und eine Short-Order eröffnen

ActualTP = Bid - (TakeProfit * Point);

LastTicket = OrderSend(Symbol(), OP_SELL, ActualLotSize, Bid, OrderSlippage, ActualSL, ActualTP, "Order" + (ActualOrders + 1), Magic, 0, Red);

}

//Wenn die Bestellung durchgelaufen ist, ist sie größer als 0

wenn (LastTicket > 0) {

ActualOrders++;

}

//Bestellung fehlgeschlagen, also müssen wir den Wert zurücksetzen

sonst {

ActualLotSize = TempActualLotSize;

}

}

Spiegelt der von Ihnen verwendete Code diese Änderung wider, denn ich verwende diesen Code, und ich habe keine Probleme damit, mehrere Aufträge zu öffnen und zu schließen, wenn sie TP oder SL sein sollten. Beachten Sie, dass diese Art von Änderung auch in anderen Bereichen des Codes zu finden ist, so dass das Kopieren und Einfügen dieses Abschnitts allein das Problem nicht beheben wird.

 

Jugulator H4 Ergebnisse

Hier sind die 0,10 und 0,01 Ergebnisse von heute Morgen.

 

Jugulator H4 Ergebnisse

Hier sind die 0,10 und 0,01 Ergebnisse für heute Morgen um 10 Uhr EST nach mehreren wichtigen Nachrichten.

0.01 Konto stieg um $268.94

0,10-Konto stieg um $1.912,44

 

10points3 Dynamischer Stopp

Geschlossen für die Woche 10points3 Dynamic Stop. Schließt die Paare, wenn sie in den Gewinn gehen. Zuvor gepostete Einstellungen

Insgesamt eine gute Woche.

Ich warte immer noch darauf, dass der USDJPY zurückgeht, bevor ich den Jugulator schließe.

Johannes

Dateien:
 

Jugulator1.1

Anknüpfend an die Einstellungen in Beitrag #891 und die vorherigen Ergebnisse in Beitrag #898. Hier ist die detaillierte Erklärung nach der Schließung für die Woche.

Werde mir die Einstellungen vor der Eröffnung am Montag ansehen und wahrscheinlich näher an die von Matt herankommen, da sie eindeutig besser sind als meine.

Johannes

Dateien:
jug4.htm  67 kb
jug4.gif  6 kb
 
mtaboneweb:
Das sollte hier behoben sein (Seite 89, Beitrag 890, Jugulator.zip). Es gibt eine neue Variable im EA, die auf die Auftragsnummer gesetzt wird. Wenn der Auftrag fehlschlägt, sollte es keine Auftragsnummer geben, und der Code prüft dies, bevor er die Variable ActualOrders erhöht.

void OrderNeedsOpening() {

//Wert vor der Änderung bewahren

double TempActualLotSize = ActualLotSize;

//Losgröße erhöhen

ActualLotSize = NormalizeDouble(ActualLotSize * LotsIncreaseBy, LotPrecision);

//Versuchen wir, long zu gehen?

if (OrderDirection == 1) {

//Setzen Sie den Take Profit und eröffnen Sie einen Long-Auftrag

ActualTP = Ask + (TakeProfit * Point);

LastTicket = OrderSend(Symbol(), OP_BUY, ActualLotSize, Ask, OrderSlippage, ActualSL, ActualTP, "Order" + (ActualOrders + 1), Magic, 0, Blue);

}

//Versuchen wir, short zu gehen?

else if (OrderDirection == 2) {

/ /Take Profit setzen und eine Short-Order eröffnen

ActualTP = Bid - (TakeProfit * Point);

LastTicket = OrderSend(Symbol(), OP_SELL, ActualLotSize, Bid, OrderSlippage, ActualSL, ActualTP, "Order" + (ActualOrders + 1), Magic, 0, Red);

}

//Wenn die Bestellung durchgelaufen ist, ist sie größer als 0

wenn (LastTicket > 0) {

ActualOrders++;

}

//Bestellung fehlgeschlagen, also müssen wir den Wert zurücksetzen

sonst {

ActualLotSize = TempActualLotSize;

}

}

Spiegelt der Code, den Sie verwenden, diese Änderung wider, denn das ist es, was ich verwende, und ich habe keine Probleme, mehrere Aufträge zu öffnen und sie zu schließen, wenn sie TP oder SL sein sollten. Beachten Sie, dass diese Art der Änderung ist auch in anderen Bereichen des Codes so Kopieren und Einfügen dieses Abschnitts allein wird das Problem nicht beheben.

Die Version, die ich teste, enthält die obige Änderung nicht. Ich werde die neuere Version verwenden. Vielen Dank, mtaboneweb!

 
yeoeleven:
Ich teste weiterhin 10points3 Dynamic Stop und erhalte immer noch gute Ergebnisse.

Ich entfernte GBPUSD gestern in dem Bemühen, diese EA sicher für kleine Konten zu machen es wahrscheinlich reduziert die Rentabilität, aber hoffentlich erhöht die Sicherheit.

Johannes

Verwenden Sie immer noch die orginal 10points3 Dynamic Stop, die auf Seite 18 ist?

Danke

 

10points3 Dynamischer Stopp

hawkv:
Benutzen Sie immer noch den originalen 10points3 Dynamic Stop, der auf Seite 18 zu finden ist? Danke

Ja, das ist die Version, die ich immer noch zusammen mit Goblin & Jugulator teste. Sie hält sich immer noch gut mit diesen EAs, die daraus entwickelt wurden.

John

 

tf

1. Auf Bar warten: Momentan öffnet der EA neue Orders in einem Zyklus mit gleichbleibenden Pip-Levels. Ein alternativer Ansatz wäre, sicherzustellen, dass neue Orders nicht im selben Takt eröffnet werden. Wenn Sie also eine sehr große Bewegung haben, würde der EA bis zum Schließen des Balkens warten, den Trend neu bewerten und dann eine weitere Order im Zyklus platzieren, wenn der Pip-Wert größer ist als in den Pips-Einstellungen des EA angegeben.

.1 - .2 - .3 - .5 - .8 - 1.3 - 2.1 - 4.4 - 6.5 - usw.

Dies wurde von Stockwet im Goblin-Thread gepostet. eine sehr interessante Idee, aber anstatt dort weiterzumachen, wo die Orders aufgehört haben, werden die übergangenen Orders übersprungen und mit dem nächsten Inkrement fortgesetzt, so dass Sie, wenn der Preis schnell gestiegen ist, nur die Verluste haben, die Sie auf dem Board haben. Wenn die Bar abgeschlossen ist, die ea prüft, um zu sehen, was # um umgesetzt werden sollte und beginnt von dort mit der richtigen Anzahl von Losen. so um # 4 könnte am Ende tatsächlich 2,1 Lose statt .5 Lose. Auf diese Weise könnten Ihre 2,1 Lots die Verluste ausgleichen, die der nächste normale Auftrag (.5) nicht ausgleichen könnte, wenn er zu diesem bestimmten Zeitpunkt im Preis gestartet wurde. Ihr 2,1-Lot-Auftrag wird nun zum # 4-Auftrag und schreitet von dort aus voran. Dies würde die Verluste nicht verringern, wenn die Progression bis 10 geht, aber es würde der Progression erlauben, weiter zu gehen, bevor sie geschlossen wird, so dass Sie eine bessere Chance haben, die Verluste wieder auszugleichen. Oder die Geschäfte könnten geschlossen werden, wenn festgestellt wird, dass sich der Trend geändert hat, und zwar mit einem geringeren Verlust, als er normalerweise entstanden wäre. Wäre dies eine praktikable Idee???