Wenn immer wieder irgendwelche OrderLots() miteinander und mit anderen Werten multipliziert werden, kommen irgendwann Ergebnisse raus, die sich nicht einfach so als Lot-Wert nutzen lassen. Bzw. dem MT4 überhaupt nicht passen. Die wirken sich dann auch auf weitere Berechnungen/Vergleiche aus.
Man müsste wohl nur die jeweiligen OrderLots() * Lots_Multi rechnen. Aber wie das jeweilige Zwischen-Ergebnis zwischen speichern, ohne das unbrauchbare Lot-Werte rauskommen?
Der EA hat an 2 Tagen hintereinander mit EURUSD Gewinn gemacht. Nicht besonders viel, aber wie gesagt praktisch ohne Verlust-Risiko. Solange diese Lot-Berechnungen eben brauchbare Lot-Werte ergeben haben.
Code:
// ...Lots für NextSel-by-NextBuy berechnen:
L_LO=1.0;
for(m=OrdersTotal()-1;m>=0;m--){
if(OrderSelect(m,SELECT_BY_POS)){
if(OrderSymbol()==Symbol()){
if( OrderMagicNumber()==MN_NeBuy ){
Lots_Sel = L_LO * OrderLots() * Lots_Multi;
L_LO = Lots_Sel;
}}}}
Code:
// ...Lots für NextBuy-by-NextSel berechnen:
L_SH=1.0;
for(m=OrdersTotal()-1;m>=0;m--){
if(OrderSelect(m,SELECT_BY_POS)){
if(OrderSymbol()==Symbol()){
if( OrderMagicNumber()==MN_NeSel ){
Lots_Buy = L_SH * OrderLots() * Lots_Multi;
L_SH = Lots_Buy;
}}}}