Chiedete! - pagina 30

 

for (int cnt1=OrdersTotal()-1;cnt1>=0;cnt1--)

OrderSelect(cnt1, SELECT_BY_POS, MODE_TRADES);

if (OrderType()>=OP_SELL && OrderSymbol()==Symbol() && (OrderMagicNumber () == MagicNumber || MagicNumber==0))

{

if(OrderStopLoss()>Ask+Point*15|||OrderStopLoss()==0)

OrderModify(OrderTicket(),OrderOpenPrice(),Ask+(15 *Point),Bid-(20*Point),Cyan); //Modifica stop loss e take profit

return(0);

}

if (OrderType()>=OP_BUY && OrderSymbol()==Symbol() && (OrderMagicNumber () == MagicNumber || MagicNumber==0))

{

if(OrderStopLoss()<Bid-Point*15 ||OrderStopLoss()==0)

OrderModify(OrderTicket(),OrderOpenPrice(),Bid-(15*Point),Ask+(20*Point),Cyan); //Modifica stop loss e take profit

return(0);

}

return(0);

}

}

Ci stiamo avvicinando, ma non del tutto! Questo sta davvero mettendo alla prova la mia pazienza!

Dave

<<<

 

allora aggiungete questo forse meglio

iscuba11:
for (int cnt1=OrdersTotal()-1;cnt1>=0;cnt1--)

OrderSelect(cnt1, SELECT_BY_POS, MODE_TRADES);

if (OrderType()>=OP_SELL && OrderSymbol()==Symbol() && (OrderMagicNumber () == MagicNumber || MagicNumber==0))

{

if( OrderOpenPrice() - Ask >= TrailingStop * Point)

{

if(OrderStopLoss()>Ask+Point*15||OrderStopLoss()==0)

OrderModify(OrderTicket(),OrderOpenPrice(),Ask+(15 *Point),Bid-(20*Point),Cyan); //Modifica stop loss e take profit

}

return(0);

}

if (OrderType()>=OP_BUY && OrderSymbol()==Symbol() && (OrderMagicNumber () == MagicNumber || MagicNumber==0))

{

if( Bid - OrderOpenPrice() >= TrailingStop * Point)

{

if(OrderStopLoss()<Bid-Point*15 ||OrderStopLoss()==0)

OrderModify(OrderTicket(),OrderOpenPrice(),Bid-(15*Point),Ask+(20*Point),Cyan); //Modifica stop loss e take profit

}

return(0);

}

return(0);

}

}

Ci stiamo avvicinando, ma non del tutto! Questo sta davvero mettendo alla prova la mia pazienza!

Dave

<<<
 
Maji:
Per favore pubblica il tuo codice all'interno dei codici [PHP][/PHP]. È molto più facile leggere e fare il debug del codice formattato.

Sto componendo questo programma. Sono vicino a completarlo. Purtroppo non ci sono scuole su questa lingua e la documentazione lascia molto a desiderare. Detto questo, non ho la minima idea di cosa tu stia parlando. Senza offesa!

Dave <<<
 

poi aggiungere questo forse meglio[/QUOTE

Questa è l'ultima esecuzione del backtester. Così vicino eppure così lontano. Mi ricorda i miei giorni in Vietnam. Guardate la .gif dei risultati allegata. Sono in debito con voi per aver avuto la bontà del vostro cuore di aiutarmi in questo momento di tribolazione! Sembra ancora che ci sia un loop che non sta uscendo come mostrato nel trade di vendita.

Dave <<
 
iscuba11:
Sono in debito con te per aver avuto la bontà del tuo cuore di aiutarmi in questo momento di tribolazione!
Dave <<

siete i benvenuti

 

Ho ancora un loop - dannazione. Sto per crollare. Domani è un altro giorno. Questo linguaggio di basso livello è un pozzo da imparare.

Dave <<<

///////////////////MODIFICARE STOP LOSS & TAKE PROFIT ALL'INIZIO DEL CICLO DI SONNO /////////////////

for (int cnt1=OrdersTotal()-1;cnt1>=0;cnt1--)

OrderSelect(cnt1, SELECT_BY_POS, MODE_TRADES);

if (OrderType()>=OP_SELL && OrderSymbol()==Symbol() && (OrderMagicNumber () == MagicNumber || MagicNumber==0))

{

if(OrderOpenPrice()-Ask>=TrailingStop*Point)

{

se(OrderStopLoss()>Ask+Point*15||OrderStopLoss()==0)

OrderModify(OrderTicket(),OrderOpenPrice(),Ask+(15 *Point),Bid-(20*Point),Cyan); //Modifica stop loss e take profit

}

return(0);

}

if (OrderType()>=OP_BUY && OrderSymbol()==Symbol() && (OrderMagicNumber () == MagicNumber || MagicNumber==0))

{

if(Bid-OrderOpenPrice()>=TrailingStop*Point)

{

if(OrderStopLoss()<Bid-Point*15 ||OrderStopLoss()==0)

OrderModify(OrderTicket(),OrderOpenPrice(),Bid-(15*Point),Ask+(20*Point),Cyan); //Modifica stop loss e take profit

}

return(0);

}

return(0);

}

}

//////////////////////////////////////////////////////////////////////////////////////

La mia codifica così com'è sopra. C'è un bug in esso che causa un ciclo di modifica. Molti bug o aggiunte lo hanno portato a questo stadio. Per favore aiutate a trovare il bug del loop qualcuno!

 

o forse non ho capito bene il vostro scopo

cosa volete che faccia la funzione OrderModify()?

per fare il trailling stop o qualcos'altro?

Per favore, chiarisci di nuovo

 

Il progetto originale è quello di ridurre gli stop loss e i take profit su ogni ordine di acquisto o vendita aperto quando il programma sta per entrare in modalità sleep.

Invece di un grande stop loss di 40-50 pip e un grande take profit di 100 pip in ogni trade aperto, volevo che ogni trade aperto fosse ridotto a uno stop loss di 15 pip e il take profit di 100 fosse ridotto a un take profit di 25 pip.

Poi il programma sarebbe andato in sleep (stop) e le operazioni aperte avrebbero fatto il loro corso senza ulteriori interventi del programma (modalità sleep) - Ogni operazione aperta avrebbe poi realizzato un profitto di 25 pip o una perdita di 15 pip e si sarebbe chiusa da sola.

Spero che questo aiuti a chiarire lo scopo della modifica dello stop loss e del take profit. Mi dispiace per il malinteso. Vi prego di aiutarmi se volete a realizzare queste modifiche! Grazie mille per il vostro aiuto fino ad ora!

Ragazzi, anch'io ho avuto bisogno di dormire la scorsa notte!

Dave

<<<
 
iscuba11:
Sto mettendo insieme i pezzi di questo programma. Sono vicino a completarlo. Sfortunatamente, non ci sono scuole su questo linguaggio e la documentazione lascia molto a desiderare. Detto questo, non ho la minima idea di cosa tu stia parlando. Senza offesa!
Dave <<<

Quando stai per copiare e incollare un frammento di codice, seleziona quel piccolo pulsante "php" in cima alla schermata di modifica. In alternativa, puoi prima digitare "[ PHP ]"

e poi terminare il tuo codice digitando "[ /PHP ]" senza le virgolette e rimuovere gli spazi tra le parentesi quadre. Vedi cosa ottieni

 
Maji:
Quando stai per copiare e incollare uno snippet di codice, seleziona quel piccolo pulsante "php" in cima alla schermata di modifica. In alternativa, puoi prima digitare "[ PHP ]" e poi terminare il tuo codice digitando "[ /PHP ]" senza le virgolette e rimuovere gli spazi tra le parentesi quadre. Vedi cosa ottieni

Il pulsante PHP? Si trova sul lato del forum o sul MetaEditor da cui sto copiando il codice? Non riesco a trovare un pulsante PHP sul MetaEditor.

Dave <<<
Motivazione: