TS Interrotto con istruzione QUIT
Forums › ProRealTime forum Italiano › Supporto ProOrder › TS Interrotto con istruzione QUIT
- This topic has 3 replies, 2 voices, and was last updated 3 years ago by robertogozzi.
-
-
11/11/2021 at 10:47 PM #181468
Salve a tutti, di seguito vi scrivo il codice che uso abitualmente per controllare i miei trading systems:
Controllo TS123456789101112131415161718192021222324252627282930313233343536373839404142//////////////////// ******************** CODICE MAX DRAWDOWN - MAX TRADE LOSS CONSECUTIVI E DATA DI SCADENZA ******************** ////////////////////// Max DRAWDOWN// Max Trade Lossconsecutivi// Data Scadenza TSMaxTradeLoss = 20 // Massimo trade perdenti consecutiviScadenza = date >= 20250331 // Data scadenza TS //Marzo 2025// Max DrawdownONCE Capital = 10000ONCE MinPoint = CapitalONCE MaxPoint = 0ONCE MaxRU = 0ONCE MaxDD = 4200 * size //drawdown 2 deviazioni standard leggermente aumentato rispetto alla simulazione montecarlo//------------------------------------------// EQUITYEquity = Capital + StrategyProfitTempProfit = PositionPerf * PositionPrice / PipSizeTempEquity = Equity + TempProfit//------------------------------------------// DrawDownMaxPoint = max(MaxPoint,TempEquity)DD = MaxPoint - TempEquityMaxDD = max(MaxDD,DD)////------------------------------------------// Max Trade Lossif StrategyProfit < StrategyProfit[1] thenPerdo = Perdo+1elseif StrategyProfit > StrategyProfit[1] thenPerdo=0endifendifif (abs(DD) >= MaxDD) or (perdo >= MaxTradeLoss ) or Scadenza thenquitendif////////////////////// ******************** FINE CODICE MAX DRAWDOWN - MAX TRADE LOSS CONSECUTIVI E DATA DI SCADENZA ******************** ////////////////////Oggi uno dei miei TS è stato interrotto, secondo me senza motivo.
La motivazione data dalla piattaforma è stata che si è attivata l’istruzione QUIT posta all’interno del trading system.
Vi allego il performance report del TS dove è chiaro che non siano mai state raggiunte le condizioni di chiusura:
- MAX DRAWDOWN
- MASSIMO TRADE PERDENTI CONSECUTIVI
- DATA DI SCADENZA
Grazie a chi potrà aiutarmi
11/12/2021 at 12:29 AM #181470Questo è il codice per il test (su Dax, 1H):
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960// test code (Dax,1 hour,50K units)//avg = Average[8,1](close)if close crosses over Avg and Not OnMarket thenbuy at Marketelsif close crosses under Avg and Not OnMarket thensellshort at Marketendifset target pprofit 2000set stop ploss 2000//if positionperf > 0.0005 then//sell at market//exitshort at marketendif//////////////////// ******************** CODICE MAX DRAWDOWN - MAX TRADE LOSS CONSECUTIVI E DATA DI SCADENZA ******************** ////////////////////// Max DRAWDOWN// Max Trade Lossconsecutivi// Data Scadenza TSMaxTradeLoss = 20 // Massimo trade perdenti consecutiviScadenza = date >= 20250331 // Data scadenza TS //Marzo 2025// Max DrawdownONCE Capital = 10000ONCE MinPoint = CapitalONCE MaxPoint = 0ONCE MaxRU = 0ONCE MaxDD = 4200 //* size //drawdown 2 deviazioni standard leggermente aumentato rispetto alla simulazione montecarlo//------------------------------------------// EQUITYEquity = Capital + StrategyProfitTempProfit = PositionPerf * PositionPrice / PipSizeTempEquity = Equity + TempProfit//------------------------------------------// DrawDownMaxPoint = max(MaxPoint,TempEquity)DD = MaxPoint - TempEquityMaxDD = max(MaxDD,DD)////------------------------------------------// Max Trade Lossif StrategyProfit < StrategyProfit[1] thenPerdo = Perdo+1elseif StrategyProfit > StrategyProfit[1] thenPerdo=0endifendifif (abs(DD) >= MaxDD) or (perdo >= MaxTradeLoss ) or Scadenza thenquitendif////////////////////// ******************** FINE CODICE MAX DRAWDOWN - MAX TRADE LOSS CONSECUTIVI E DATA DI SCADENZA ******************** ////////////////////graph Perdograph DDgraph MaxDDNella foto Quit1 vedi che esce con QUIT, siccome sulla candela in cui esce i dati sono azzerati, possiamo fare riferimento solo alla candela precedente, dove le condizioni sembrano non esserci.
Però, se commenti solo la riga del QUIT, in modo che non venga eseguito e se metti un segno sulla candela dov’era uscito per ricordartela, vedrai al backtest che in quella candela la condizione c’era, come da foto Quit2.
11/12/2021 at 2:09 AM #181476Ciao Roberto, in realtà non ho ben capito.
Come posso risolvere il problema?
11/12/2021 at 9:13 AM #181490Il problema, così come l’hai messo, puoi risolverlo solo aumentando MAXDD.
Il DrawDown è un valore che cambia con il tempo, se usi 10K unità è diverso da quello con 100K e da quello con 1M di unità.
Il problema è che se anche la strategia è profittevole, il DrawDown può aumentare ugualmente perché è la massima esposizione finanziaria riscontrata.
Puoi risolvere la cosa stabilendo un’uscita, oppure una riduzione dei contratti, quando il DrawDown supera una percentuale X dell’equity (Capitale + Profitto).
In questo modo può aumentare, ma nel contempo aumentano anche i profitti generati. Se questo non succede, esce o riduce il numero di contratti finché non torna al di sotto di quella percentuale.
Invece di uscire, o diminuire i contratti, appena superata quella percentuale, puoi decidere di farlo solo quando il superamento si verifica per N candele consecutive.
Si tratta di fare delle prove e trovare la soluzione migliore.
-
AuthorPosts
Find exclusive trading pro-tools on