MICHParticipant
Junior
Ciao a tutti,
Ipotizziamo che io abbia aperto 3 posizioni e voglio impostare un target complessivo delle 3 posizioni. Come posso fare?
Ad esempio, ad un certo punto la prima e la seconda posizione possono essere in perdita mentre la terza è in positivo in modo tale da recuperare la perdita delle prime 2 e un guadagno aggiuntivo. Come posso fare per impostarlo?
Grazie
Puoi usare l’istruzione POSITIONPERF che ti restituisce il moltiplicatore del gradagno o della perdita, 0.003 significa 0.3% (devi moltiplicarlo per 100 per ottenere la percentuale). Un valore negativo indica una perdita.
Viene aggiornato candela per candela ed è calcolato sul prezzo medio (vedi foto allegata e file allegato per capire come funziona il calcolo).
Puoi usarlo per sapere quanti Pips o Soldi stai guadagnando o perdendo:
- PositionPerf * PositionPrice / PipSize (indica il numero di Pips)
- PositionPerf * PositionPrice / PipSize * PipValue (indica il valore in moneta)
Quando tu metti SET STOP pLOSS (ma vale anche per il target) 100, setterà un profitto di 100 punti calcolati sul prezzo medio.
MICHParticipant
Junior
Grazie Roberto per la risposta dettagliata, ora è molto chiaro.
Però se volessi differenziare il guadagno/perdita complessivo delle posizioni long e il guadagno complessivo delle posizioni short, come posso fare?
Devi creare due diverse variabili, una per la parte Long ed una per la Short e verificare se l’operazione è (o era) LongOnMarket oppure ShortOnMarket (non l’ho provato, se non per la sola sintassi):
ONCE StrategyProfitL = 0
ONCE StrategyProfitS = 0
ONCE tempProfitL = 0
ONCE tempProfitS = 0
// aggiornare il dato finale di un'operazione conclusa
IF StrategyProfit <> StrategyProfit[1] THEN
// caso LONG
IF LongOnMarket[1] THEN
StrategyProfitL = StrategyProfitL + (StrategyProfit - StrategyProfit[1])
// caso SHORT
ELSIF ShortOnMarket[1] THEN
StrategyProfitS = StrategyProfitS + (StrategyProfit - StrategyProfit[1])
// caso LONG in cui l'operazione è stata aperta e terminata in UNA sola barra
ELSIF LongTriggered[1] THEN
StrategyProfitL = StrategyProfitL + (StrategyProfit - StrategyProfit[1])
// caso SHORT in cui l'operazione è stata aperta e terminata in UNA sola barra
ELSIF ShortTriggered[1] THEN
StrategyProfitS = StrategyProfitS + (StrategyProfit - StrategyProfit[1])
ENDIF
ENDIF
// aggiornare il dato temporaneo di un'operazione in corso
IF LongOnMarket THEN
tempProfitL = tempProfitL + (PositionPerf * PositionPrice / PipSize * PipValue)
ELSIF ShortOnMarket THEN
tempProfitS = tempProfitS + (PositionPerf * PositionPrice / PipSize * PipValue)
ENDIF