Info uscita ordini limite
Forums › ProRealTime forum Italiano › Supporto ProOrder › Info uscita ordini limite
- This topic has 7 replies, 2 voices, and was last updated 2 years ago by MauroPro. 
- 
	
		
- 
		
			
				
11/15/2022 at 6:37 PM #204228Ciao Roberto, non riesco ad uscire correttamente con gli ordini limite nel secondo codice sotto riportato. Lo puoi controllare – riscrivere (anche diversamente)? Questo codice (codice 1) con ordini “normali” funziona correttamente (prova su cfd Dax – 15m) : il sistema liquida la prima parte della posizione dopo 50 punti di gain e la seconda parte dopo 100 punti oltre questi 50 punti. defParam cumulateOrders =false 
 positionSize = 2
 cLong = close crosses over average[50,0]If not onMarket and cLong then 
 buy positionSize contract at market
 set stop pLoss 100
 flagL = 0
 elsIf longOnMarket and (close – tradePrice(1)) > 50*pointSize and flagL = 0 then
 sell (positionSize/2) contract at market
 flagL = 1
 elsIf longOnMarket and (close – tradePrice(1)) > 100*pointSize and flagL = 1 then
 sell (positionSize/2) contract at market
 flagL = 0
 endifPoi ho riscritto il codice con ordini limite in modo che il TS esca ESATTAMENTE a 50 e 100 punti (100 sempre contando dopo i primi 50 punti). Tuttavia il TS liquida correttamente la prima parte a 50 punti esatti e sempre ad altri 50 punti (e non 100) la seconda parte, e non capisco il motivo (vedi immagine, sistema B sopra). defParam cumulateOrders =false 
 positionSize = 2
 cLong = close crosses over average[50,0]If not onMarket and cLong then 
 buy positionSize contract at market
 set stop pLoss 100
 flagL = 0
 elsIf longOnMarket and flagL = 0 then
 sell (positionSize/2) contract at tradePrice(1) + 50*pointSize limit
 flagL = 1
 elsIf longOnMarket and flagL = 1 then
 sell (positionSize/2) contract at tradePrice(1) + 100*pointSize limit
 flagL = 0
 endif11/21/2022 at 12:15 PM #204560Alla riga 14 scrivi: 1flagL = 211/21/2022 at 2:12 PM #20456811/21/2022 at 3:45 PM #204570Perché FlagL va settato ad 1 al di fuori dell’IF dove vengono piazzati gli ordini, altrimenti lo rimette a zero dopo la prima uscita: 1234567891011121314151617defParam cumulateOrders =falsepositionSize = 2cLong = close crosses over average[50,0]IF lONGOnMarket THENIF abs(CountOfPosition) < abs(CountOfPosition)[1] THENFlagl = 1ENDIFENDIFIf not onMarket and cLong thenbuy positionSize contract at marketset stop pLoss 100flagL = 0elsIf longOnMarket and flagL = 0 thensell (positionSize/2) contract at tradePrice(1) + 50*pointSize limitelsIf longOnMarket and flagL = 1 thensell (positionSize/2) contract at tradePrice(1) + 100*pointSize limitendif1 user thanked author for this post.11/21/2022 at 4:58 PM #204577Ciao Roberto, lo ho provato e funziona, ora provo a metterlo nel sistema reale. Una cosa al volo: in base alla tua esperienza da che cosa può dipendere se un TS viene eseguito nel backtest e non viene eseguito nel proOrder? (nella lista del proOrdere il TS è attivo ma non entra e non compare nesun segnale) 11/21/2022 at 5:19 PM #204578Queste possono essere le principali cause (tradotto da un post di Nicolas): - Differenza di prezzo (Spread)
- Slittamento (slippage)
- Rifiuto di ordini per uno dei motivi sopra indicati, ma anche per la distanza consentita dal prezzo corrente per inserire ordini in sospeso (nota come “distanza minima”)
- Orari di negoziazione diversi (codice ProOrder lanciato in un fuso orario diverso / orari personalizzati, dall’utente)
- Problema di codifica: divisione per errore zero, periodi nulli o negativi per indicatori, ecc…
- Mancanza di reattività dei server demo IG (se IG è il broker), anche se questo è notevolmente migliorato rispetto allo scorso anno
- Effettuare backtest senza l’opzione tick-by-tick
- L’istruzione “set stop trailing” che dà a IG il controllo totale del tuo stoploss, può essere spostata in modo diverso tra i conti a causa dei punti di cui sopra
- Conti a rischio limitato e loro regole
- Regole e commissioni di stoploss garantite
- Avviare una strategia in un momento diverso (1 ora o anche 1 minuto dopo): a seconda del codice della strategia, i risultati di alcuni calcoli potrebbero essere diversi
- Margine richiesto sul conto di trading (non vengono effettuati test demo o backtest su questo argomento)
- Tariffe notturne e infrasettimanali
- Adeguamento automatico degli ordini stop controllati o meno all’avvio del ProOrder
- Distanza minima utilizzata nei backtest per ordini pendenti, non la stessa del trading reale, a causa dei requisiti del broker
- Dimensioni del contratto diverse tra backtest e live
 poiché i backtest vengono testati solo sulla cronologia senza alcuna connessione al mercato live, potresti riscontrare differenze con l’ambiente di trading dal vivo reale soggetto ad allargamento dello spread, slippage, ecc… 11/21/2022 at 5:25 PM #20457911/21/2022 at 5:28 PM #204580
- 
		AuthorPosts
			Find exclusive trading pro-tools on 


 
		 
		 
		