Il B127 supporterà il metodo Trailing Stop personalizzato nel CodeEditor?
1 risposte
eastpeace
4 anni fa #257678
Non so se B127 supporterà un metodo di uscita personalizzato nell'editor di codifica. Voglio implementare alcuni metodi personalizzati per l'uscita, ma non sono sicuro che SQ possa convertire bene il linguaggio MC / TS.
La B127 è stata rimandata per troppo tempo e finora non abbiamo visto alcuna versione di sviluppo o beta.
Ma non sono affatto soddisfatto di alcuni metodi di uscita all'interno di SQ.
Amici che usano TS o MC, lo pensate anche voi?
ad esempio, questo è un trailing stop con attivazione, utilizzando l'ATR.
Rispetto al trailing stop con pip/size fisso, l'implementazione con ATR non è molto accurata.
...
LongSLPlaced = false;
Se BarsSinceEntry = 0 allora iniziare
IntLongSL = 0;
IntLongTS = 0;
fine;
// StopLoss
IntLongSL = EntryPrice - EnterRvrAtMrkStpLss * tickSize;
IntLongSL = SQ_CorrectMinMaxSLPT(IntLongSL, MinimumSL, MaximumSL, true);
Vendere("LongSL") la prossima barra allo stop IntLongSL;
LongSLPlaced = true;
// ProfitTarget init
IntPT = 0;
// Trailing Stop
IntPriceLevel = EnterRvrAtMrkTrlStpCef * SQ_ATR(20)[1];
Se IntPriceLevel > 0 e Close - EntryPrice >= Round2Fraction(EnterRvrAtMrkTrlActCef * SQ_ATR(20)[1]) e (IntLongTS = 0 o Round2Fraction(Close - IntPriceLevel) > IntLongTS) allora iniziare
IntLongTS = Round2Fraction(Close - IntPriceLevel); // ricordate anche il trailing stop
fine;
Se IntLongTS > 0 e IntLongTS > IntLongSL allora iniziare
Vendi("LongTrailingStop") la prossima barra a IntLongTS stop;
LongSLPlaced = true;
fine;
...
Non so come funzioni internamente SQ e come funzioni con il motore di backtest di TS o MC.
Ecco il mio suggerimento in base a questo pezzo di codice EL.
1,IntLongsl.
Se si utilizza l'ATR per lo stop loss iniziale. Utilizziamo il valore fisso, l'ATR prima dell'entrata.
preatr = SQ_ATR(20);
//------------------------------------------------------------------
// ingresso
//------------------------------------------------------------------
//.....parte
//------------------------
// Ordini di uscita (SL, PT, Trailing) per la regola: Ingresso lungo
//------------------------
if(MarketPosition > 0) then begin
LongSLPlaced = false;
Se BarsSinceEntry = 0 allora iniziare
IntLongSL = 0;
IntLongTS = 0;
AtrbeforeEntry = preatr[1];
fine;
//...
Quindi impostiamo lo stop loss iniziale e l'obiettivo di profitto. SL e PT rimarranno a livelli fissi, assicurandosi che siano coerenti con il rapporto RR.
* Si raccomanda vivamente di anteporre tutti i calcoli degli indicatori tecnici ai codici di entrata e uscita, per garantire che non vi siano deviazioni al momento della chiamata.
2. Trailing stop
C'è un errore evidente nell'attivazione. dovremmo utilizzare il prezzo più alto nella posizione lunga. Ed è molto semplice.
se(MarketPosition > 0) allora iniziare
LongSLPlaced = false;
Se BarsSinceEntry = 0 allora iniziare
IntLongSL = 0;
IntLongTS = 0;
HighestInLong = close;
fine;
Se BarsSinceEntry >0 allora
HighestInLong = max(HighestInLong, close);
Come per lo SL e il PT iniziali, è meglio utilizzare il valore ATR fisso.
IntPriceLevel > 0 e Close - EntryPrice >= Round2Fraction(AtrbeforeEntry)
3. prezzo di trailing stop
Esistono alcuni tipi, come,
1)IntLongTS = Round2Fraction(Close - IntPriceLevel) Questo è il metodo presente in SQ.
2)
IntLongTS = Round2Fraction(Close - IntPriceLevel)
IntLongTS = MAX( Round2Fraction(Close - IntPriceLevel), [IntLongTS] )
3)
IntLongTS = Round2Fraction(HighestInLong - IntPriceLevel)
Gli ultimi due metodi per evitare l'uscita ritardata a causa del rallentamento.
Se non è possibile codificare nel codeditor, spero che SQ possa migliorare questi metodi di uscita. L'ho richiesto molte volte. Credo che questo aiuterà anche altri trader.
tomas262
4 anni fa #257699
Salve,
rilasceremo il prossimo aggiornamento SQ 127 entro la fine di questa settimana, probabilmente se non verranno riscontrati bug importanti.
In questa versione è possibile costruire i propri "blocchi" che possono essere utilizzati per ingresso o uscita ma non per l'attivazione del trailing stop, come suggerisci tu.
Vedo che si è già discusso dell'implementazione di SL e TSL nel codice di MC e EL, ma farò sapere agli sviluppatori di questo argomento
Stai visualizzando 1 risposte (di 1 totali)