Domanda per gli esperti
Gli stop loss in EasyLanguage built-in che proteggono dalla barra di ingresso si settano con la perdita massima consentita per trade.
Con
SetStopShare;
SetStopLoss(.25);
si intende la massima perdita per azione.
Sinonimo è anche, per contratto,
SetStopContract;
SetStopLoss(.001);
Oppure per proteggere tutta intera la posizione:
SetStopPosition;
SetStopLoss(250);
Domanda: Siccome i valori di stop (e analogamente i take profit) vengono calcolati dalla piattaforma ad ingresso avvenuto essi sono noti soltanto a sessione aperta. Siccome mi serve settare gli stop su IB prima che la sessione sia aperta e non dopo (sarebbe molto scomodo) io calcolo gli stop e li scrivo nel easylanguage log.
Quello che succede ovviamente è che, specialmente per ingressi market, lo stop calcolato prima e scritto sul log è diverso dallo stop calcolato dalla piattaforma dopo l'ingresso.
Questo potrebbe compromettere i backtest e le aspettative.
Sto cercando quindi di chiedere ad easyLanguage di settare gli stop loss su un prezzo fisso calcolato a priori, e non su un prezzo calcolato a posteriori dopo l'ingresso in posizione.
Ma questa istruzione non è presente.
Inoltre sulla barra di ingresso il prezzo entryprice non è accessibile quindi l'istruzione seguente non funziona che, in teoria, dovrebbe settare lo stop loss tenendo conto dell'effettivo prezzo stop di ingresso a mercato e non quello supposto della strategia.
setstopshare;
Setstoploss(setMaxLossPerShare + (entryprice-stopEntryPrice));
SetProfitTarget(setMaxGainPerShare + (entryprice-stopEntryPrice));
Grazie
Marcello