Modificare il take profit
Forums › ProRealTime forum Italiano › Supporto ProOrder › Modificare il take profit
- This topic has 21 replies, 4 voices, and was last updated 4 years ago by supermyguel.
-
-
01/11/2020 at 7:01 PM #116454
Scusate,
ho provato a cercare nel forum ma non sono riuscito a trovare nulla, circa la possibilità di spostate, oltre allo stop loss, anche il take profit, nel caso in cui la possibilità me lo permetta.
C’è una riga di comando apposita per farlo?
Per esempio,
1234567if condizione thennewtp = newtp + 5??????endifGrazie
Francesco
01/11/2020 at 7:57 PM #116458Puoi usare SET TARGET PROFIT o PPROFIT, a seconda che tu indichi una differenza espressa in prezzo o in pips rispetto al prezzo d’ingresso.
In alternativa puoi verificare quando il prezzo raggiunge il TP ed uscire a mercato.
1 user thanked author for this post.
01/11/2020 at 8:12 PM #1164591234sell at close limit // tp buyexitshort at close limit // tp sellsell at close stop // stop buyexitshort at close stop // stop SELLBuongiorno,
Sostituisci close con un altro valore1 user thanked author for this post.
01/12/2020 at 8:02 AM #11647801/12/2020 at 7:17 PM #116535Buonasera
Mi riallaccio a questo topic visto che si parla più o meno della stessa cosa….
Il mio quesito è questo.
E’ possibile inserire una stringa che mi “sposti” lo stop loss ad una determinata soglia (entrata + 100 nel mio caso) se il guadagno supera un certo importo?
Ad esempio una cosa del genere (metto un riassunto del codice…)
1234567newsllong = (close – TRADEPRICE) > 400IF newsllong THENSELL AT (TRADEPRICE + 100) STOPENDIFSET STOP PLOSS 72001/12/2020 at 7:50 PM #116537>> Per chiarezza dei messaggi sul Forum di Prorealcode, separare le parti del vostro codice usando il pulsante “Insert PRT code”. <<
Grazie 🙂01/12/2020 at 7:59 PM #116538Suggerisco di aggiungere * pipsize sia dopo 400 alla riga 1 che dopo 100 alla riga 4, per rendere il codice trasportabile da uno strumento all’altro.
Il tuo codice va bene, forse è meglio spostare in alto la riga 7, l’ultima, in quanto essendo equivalente ad un’uscita SELL (quando sei Long), potrebbe sovrascriverete l’ordine di uscita della riga 4.
01/12/2020 at 9:45 PM #116553Grazie per la risposta!
Ho modificato ma sembra non funzionare….
Il codice completo è questo…… Dove potrebbe essere errato?
Grazie
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556// Definizione dei parametri del codiceDEFPARAM CumulateOrders = False // Posizioni cumulate disattivateONCE TradeLong = 1ONCE TradeShort = 1newsllong = (close - TRADEPRICE) > 400*pipsizenewslshort = (TRADEPRICE-CLOSE) >400*pipsize// Condizioni per entrare su posizioni longindicator1 = xxxc1 = (indicator1 >= 100)IF c1 AND TradeLong = 1 THENBUY 1 CONTRACT AT MARKETTradeLong = 0TradeShort = 1ENDIF// Condizioni per uscire da posizioni longindicator2 = xxxc2 = (indicator2 <= -10)IF c2 THENSELL AT MARKETENDIFIF newsllong THENSELL AT (TRADEPRICE + 100* pipsize) STOPENDIF// Condizioni per entrare su posizioni shortindicator3 = xxxc3 = (indicator3 <= -90)IF c3 AND TradeShort = 1 THENSELLSHORT 1 CONTRACT AT MARKETTradeLong = 1TradeShort = 0ENDIFIF newslshort THENEXITSHORT AT (TRADEPRICE - 100* pipsize) STOPENDIF// Condizioni per uscire da posizioni shortindicator4 = xxxc4 = (indicator4 >= -6)IF c4 THENEXITSHORT AT MARKETENDIF//SET STOP pTRAILING 660//SET STOP PLOSS 720SET TARGET PPROFIT 95001/12/2020 at 10:11 PM #116556Intanto l’ultima riga la sposterei alla 5 o alla 8.
Il problema principale è che gli ordini prendenti durano una sola barra e vanno reimmessi, se necessario, ad ogni nuova barra.
Nel tuo caso se in una barra lo stop alle righe 6 e 7 viene settato, se nella barra successiva scende a 399, viene disattivato, vanificando quanto fatto la barra precedente, per cui devi eseguire la riga 6 solo se newsllong=0 e la riga 7 solo se newslshort=0.
Ovviamente dovrai azzerare entrambe queste variabili quando non sei a mercato e devi farlo prima della riga 6.
01/13/2020 at 10:40 PM #11670312345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364// Definizione dei parametri del codiceDEFPARAM CumulateOrders = False // Posizioni cumulate disattivateONCE TradeLong = 1ONCE TradeShort = 1SET TARGET PPROFIT 950ONCE newsllong = 0ONCE newslshort = 0IF newsllong = 0 thennewsllong = (close - TRADEPRICE) > 400*pipsizeendifIF newslshort = 0 thennewslshort = (TRADEPRICE-CLOSE) >400*pipsizeendif// Condizioni per entrare su posizioni longindicator1 = xxxc1 = (indicator1 >= 100)IF c1 AND TradeLong = 1 THENBUY 1 CONTRACT AT MARKETTradeLong = 0TradeShort = 1ENDIF// Condizioni per uscire da posizioni longindicator2 = xxxc2 = (indicator2 <= -10)IF c2 THENSELL AT MARKETENDIFIF newsllong THENSELL AT (TRADEPRICE + 100* pipsize) STOPENDIF// Condizioni per entrare su posizioni shortindicator3 = xxxc3 = (indicator3 <= -90)IF c3 AND TradeShort = 1 THENSELLSHORT 1 CONTRACT AT MARKETTradeLong = 1TradeShort = 0ENDIFIF newslshort THENEXITSHORT AT (TRADEPRICE - 100* pipsize) STOPENDIF// Condizioni per uscire da posizioni shortindicator4 = xxxc4 = (indicator4 >= -6)IF c4 THENEXITSHORT AT MARKETENDIF//SET STOP pTRAILING 660//SET STOP PLOSS 720Innanzitutto grazie per il tuo aiuto….
Ma quindi una cosa del genere? Perchè se è così c’è qualcosa che non va visto che il backtesting è orrendo….
p.s.
scusa ma finchè si tratta di costruire indicatori me la cavo ma azzerare variabili sono in difficoltà….
01/14/2020 at 12:44 AM #116708Sostituisci la riga 11 con:
1IF newsllong = 0 AND LongOnMarket thene la riga 15 con:
1IF newslshort = 0 AND ShortOnMarket thenCosì va bene…. se il backtest è orrendo…. non preocuparti, ne scriverai decine o centinaia di strategie che dopo poco metterai nel cestino!
Non so cosa dirti perché non l’ho provata.
01/14/2020 at 10:44 PM #116822Non funziona…… Non fa mai quello che deve…. Non sposta mai lo stop…… boh
01/14/2020 at 10:46 PM #116824Deve spostare lo SL solo una volta, al superamento di 400 pips di guadagno lo sposta a pareggio + 100 pips. Poi resta li fermo.
01/15/2020 at 4:27 PM #116889Non sposta mai lo STOP a BE + 100……. nel backtest in modalità normale (senza BE+100) ho risultati soddiasfacenti….. mettendo l’istruzione BE+100 tutte le operazioni sono negative….. e mi pare impossibile…
01/15/2020 at 4:56 PM #116893Ma va qualche volta sopra i 400 pips?
Su quale strumento e TF lo usi?
-
AuthorPosts
Find exclusive trading pro-tools on