Errore al cambio dei valori (da sempre lo stesso risultato)
Forums › ProRealTime forum Italiano › Supporto ProBuilder › Errore al cambio dei valori (da sempre lo stesso risultato)
- This topic has 97 replies, 2 voices, and was last updated 4 years ago by robertogozzi.
Tagged: lot size, lotti, money management
-
-
09/22/2020 at 12:27 PM #144984
Nel codice acquista e vende SEMPRE 1, perché quella è la cifra che hai messo con BUY/SELLSHORT.
Tu puoi fare tutti i calcoli che vuoi, ma se al momento di entrare in posizione ci scrivi 1, quello è! Dovresti usare al posto di 1 la variabile contenente il numero dei lotti calcolati.
09/23/2020 at 12:34 PM #14507409/24/2020 at 12:05 PM #145178Questo dovrebbe andare bene:
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107// Definizione dei parametri del codiceDEFPARAM CumulateOrders = false // Posizioni cumulate attivate// Il sistema cancellerà tutti gli ordini in attesa e chiuderà tutte le posizioni a 0:00. Dopo l’orario "Flat Before" non saranno piazzati nuovi ordini o posizioni.DEFPARAM FLATBEFORE = 230100// Cancellare tutti gli ordini in attesa e chiudere tutte le posizioni all’orario "Flat After"DEFPARAM FLATAFTER = 230000//TIMEFRAME(default)// Impedisce al sistema di tradare in giorni specifici della settimanadaysForbiddenEntry = OpenDayOfWeek = 6 OR OpenDayOfWeek = 0IF Not OnMarket THENSL = 0TP = 0ENDIF//risk = 50 //max. capitale da rischiarelotti = 1 //1 lotto per difettoMyATR = AverageTrueRange[7](close)*10 // 10 volte atr//Pips = Risk / PipValue //RicalcolaSET STOP pLOSS Pips//// Condizioni per entrare su posizioni longindicator1 = Average[3](Stochastic[5,3](close))c1 = (indicator1 CROSSES OVER 20)//TIMEFRAME(1 hour,default)indicator2 = ExponentialAverage[9](close)indicator3 = ExponentialAverage[21](close)c2 = (indicator2[1] > indicator3[1])//TIMEFRAME(default)IF (c1 AND c2) AND not daysForbiddenEntry THENIF SL = 0 OR ShortOnMarket THENSL = MyATRTP = SL * 3ENDIFBUY Lotti SHARES AT MARKETSET TARGET PROFIT TPSET STOP LOSS SLENDIF// Condizioni per entrare su posizioni shortindicator4 = Average[3](Stochastic[5,3](close))c3 = (indicator4 CROSSES UNDER 80)//TIMEFRAME(1 hour,default)indicator5 = ExponentialAverage[9](close)indicator6 = ExponentialAverage[21](close)c4 = (indicator5[1] < indicator6[1])//TIMEFRAME(default)IF (c3 AND c4) AND not daysForbiddenEntry THENIF SL = 0 OR LongOnMarket THENSL = MyATRTP = SL * 3ENDIFSELLSHORT Lotti SHARES AT MARKETSET TARGET PROFIT TPSET STOP LOSS SLENDIFTIMEFRAME (5minute,upDateOnClose)//************************************************************************//trailing stop functiontrailingstart = 20 //trailing will start @trailinstart points profittrailingstep = 5 //trailing step to move the "stoploss"//reset the stoploss valueIF NOT ONMARKET THENnewSL=0ENDIF//manage long positionsIF LONGONMARKET THEN//first move (breakeven)IF newSL=0 AND close-tradeprice(1)>=trailingstart*pipsize THENnewSL = tradeprice(1)+trailingstep*pipsizeENDIF//next movesIF newSL>0 AND close-newSL>=trailingstep*pipsize THENnewSL = newSL+trailingstep*pipsizeENDIFENDIF//manage short positionsIF SHORTONMARKET THEN//first move (breakeven)IF newSL=0 AND tradeprice(1)-close>=trailingstart*pipsize THENnewSL = tradeprice(1)-trailingstep*pipsizeENDIF//next movesIF newSL>0 AND newSL-close>=trailingstep*pipsize THENnewSL = newSL-trailingstep*pipsizeENDIFENDIF//stop order to exit the positionsIF newSL>0 THENSELL AT newSL STOPEXITSHORT AT newSL STOPENDIF////graph Pips//Graph TP/pipsize coloured(0,0,255,255) AS "TP"//Graph SL/pipsize coloured(255,0,0,255) AS "SL"//Graph TradePrice - close coloured(0,128,0,255) AS "Gain"09/25/2020 at 12:11 AM #14529209/25/2020 at 12:20 AM #145293Calcolano i Pips, su Mini EURUSD o DAX €1 50 euro saranno 50 pips, su EURUSD normale saranno 5 pips, sul DAX €25 saranno solo 2 pips!
Si agisce sui pips, ma si può agire anche sui lotti.
09/25/2020 at 11:57 AM #14535409/25/2020 at 12:52 PM #14536609/29/2020 at 2:21 PM #145839Ti posto due foto per come vorrei che le mie posizioni siano aperte e gestite, in questa foto ci sono due posizioni con due differenti stop loss e due differenti take profit, essendo nata come una strategia discrezionale quindi ero io manualmente a decidere la size, lo stop loss e quindi il take profit ,era tutto facile stabilire sempre la stessa perdita (50 euro) pur avendo il valore in pips differenti (10 e 5 ) come posso scrivere tutto questo sotto forma di istruzioni per far si che il programma faccia quello che facevo io manualmente quindi andare a modulare la quantità e di conseguenza il valore dei pips per far si che abbia sempre stop loss 50 e take profit 150?!
09/29/2020 at 3:21 PM #145848Con LOSS devi indicare una differenza di prezzo (es.: 0.0040) che sei disposto a perdere
Con pLOSS devi indicare i pips (es.: 40) che sei disposto a perdere
Con $LOSS devi indicare il valore monetario che sei disposto a perdere (nell’unità della valuta del tuo conto, non dei dollari, anche se il simbolo è sempre $ per chiunque)
Con %LOSS devi indicare quanto sei disposto a perdere in % sul prezzo d’entrata a mercato.Dalle foto non si capisce che calcolo vuoi fare.
Il mio esempio sopra agisce sui pips. Quello che ti avevo fatto prima agiva sui lotti.
09/29/2020 at 9:52 PM #145901Quello che volevo mostrarti con le foto che, nonostante i pips di stop siano diversi sulle due posizioni ipotizzando che lo stop sia dato dal valore del MyAtr, il valore dello stop è sempre 50$ perché varia il valore della quantità e di conseguenza il valore di un pips come in foto ed è come vorrei che fosse,indipendentemente da quanto siano i pips di stop ho sempre una perdita di 50$
09/29/2020 at 10:22 PM #145904Quindi andava bene il primo, quello dei lotti.
Devi solo fare attenzione che il calcolo non scenda sotto il minimo consentito.
09/29/2020 at 10:55 PM #145907Eh si il calcolo andava bene ma dopo sul back test non dava i valori di perdita e profitto come dovevano essere, cioè in teoria il calcolo andava bene ma dopo in pratica non era cosi, la perdita deve essere sempre di 50€ e il guadagno di 150€ ma come puoi notare anche tu non corrisponde.
09/30/2020 at 10:08 AM #145935Tu stai facendo confronti con i Futures di PRT ed i Cfd di IG. Sono stumenti diversi ed hanno una diversa gestione dei lotti.
Inoltre tu stai parlando di trading manuale, dove sei tu a decidere di volta in volta. Con il trading automatico occorre stabilire una formula di calcolo, o la facciamo sui pips, oppure lo facciamo sui lotti.
09/30/2020 at 11:21 AM #145942Eh si, so che è diverso da manuale a automatico però non sono casuali c’è la formula per determinare Lo stop e profit e di conseguenza anche la quantità di entrata,perché con ig come funziona?io anche in altre piattaforme avevo visto che era in questo modo come in foto e quindi credevo che anche qui fosse così, non c’è un modo per farlo?!
09/30/2020 at 12:09 PM #145952Come ti ho detto, o si fa il calcolo a lotti, oppure a pips.
Se metti 5o euro come limite, possono essere 2 pip di stop o 50 pip di stop, dipende dallo strumento su cui operi.
Come ti ho già detto, (parlo di CFD, tanto il trading automatico per ora si può fare solo con essi) con Dax €1 50 euro di rischio equivalgono a 50 pips, quindi hanno un senso, se la stessa strategia la esegui sul Dax € 25 sono appena 2 pips, quindi non hanno senso e ogni operazione chiuderebbe in stop loss!
-
AuthorPosts
Find exclusive trading pro-tools on