Snippet unificati per gestione TS

Viewing 8 posts - 1 through 8 (of 8 total)
  • Author
    Posts
  • #183512 quote
    MauroPro
    Participant
    Veteran

    Ciao Roberto, ho unito in una condizione (cManagement) da aggiungere alle condizioni di entrata di un TS  alcuni snippet per la gestione della strategia (servono a migliorare abbastanza i TS con poche ottimizzazioni di opt1-op2-opt3).

    Puoi contollare se va bene (dovrebbe) e soprattutto hai qualche altro snippet che pensi sia importante da aggiungere? CIAO

    maxDailyLoss = opt1          //massima perdita monetaria giornaliera, es. Opt1 = 200 (euro)
    realPosition=positionPerf*positionPrice/pointSize*pointValue
    once tradeAllowed = 1
    if intradayBarIndex=0 then
    myProfit=strategyProfit
    tradeAllowed=1
    endif
    if (strategyProfit+realPosition) <= (myProfit-maxDailyLoss) then
    tradeAllowed=0
    endif
    //--------------------------------------------------------------------------
    once nLoss = 0
    nLossMax = opt2                     //numero massimo di operazioni perdenti giornaliere, es. Opt2 = 5
    if intradayBarIndex = 0 then
    nLoss=0
    endif
    if strategyProfit < strategyProfit[1] then
    nLoss=nLoss +1
    endif
    //-----------------------------------------------------------------------
    once barCount = 0
    waitingBars = opt3                    //intervallo di barre di attesa per poter aprire un nuovo trade, es. Opt3 = 1                
    once tradeCount  = 1
    if onMarket and not onMarket[1] then
    tradeCount  = 0
    barCount = 0
    endif
    if not onMarket then
    barCount = barCount + 1
    endif
    IF barCount > waitingBars then
    tradeCount = 1
    endif
    
    cManagement = tradeAllowed and nLoss < nLossMax and barCount>waitingBars
    
    #183549 quote
    robertogozzi
    Moderator
    Master

    Va benissimo, è molto utile un raggruppamento del genere, perché ti permette di avere a disposizione tutte queste opzioni e decidere, di volta in volta, magari con l’ottimizzatore, di capire quale attivare o meno (ad esempio assegnando ad OPT1 il valore 9999999999 disattivi il controllo sulle perdite).

    Ti suggerisco, se a volte usi lo Stop & Reverse, di modificare la linea 24 così, in modo che individui una nuova operazione anche se non c’è nessuna barra in cui non sei a mercato:

    if (onMarket and not onMarket[1]) OR (LOngOnMarket AND ShortOnMarket[1]) OR (LOngOnMarket[1] AND ShortOnMarket) then
    #183553 quote
    MauroPro
    Participant
    Veteran

    Ciao Roberto, grazie per il consiglio sullo stop and reverse.

    Poichè mi piace unire le varie condizioni di acquisto tecniche in una ( es: cLong = c1 Buy and c2 Buy …), ho provato ad unire anche le varie condizioni di gestione della posizione in una (cManagement = tradeAllowed … … ) per avere un TS più “ordinato”.

    Queste sono facilmente ottimizzabili a seconda del rischio che si vuole assumere (ad esempio su un TS a 15 minuti sul Dax l’ottimizzazione di tradeAllowed che uso va da 150 a 250 con step di 10….con 1 contratto da 1 euro). Opt 2 ed opt 3 di solito vanno da 1 a 10 con step 1.

    Poi c’è tutta la terza parte dello SL, TP, TrP SplitPosition…

    Una domanda: secondo te FORMALMENTE è più corretto inserire cManagement prima o dopo:

    if not onMarket and cLong and cManagement then
    buy positionSize contract at market
    endif

    (Le condizioni tecniche vengono inserite prima, quelle sullo SL TP.. dopo, queste ho visto che le posso inserire prima o dopo con risultati differenti, a volte è meglio prima altre volte è meglio dopo a seconda del TS.)

    #183559 quote
    robertogozzi
    Moderator
    Master

    Io inserisco sempre le condizioni PRIMA che siano usate (secondo la sequenzialità del codice), però se ottieni risultati diversi secondo i casi, va bene ugualmente. Da un punto di vista logico-formale non è “bello”, ma niente di più!

    MauroPro thanked this post
    #185613 quote
    MauroPro
    Participant
    Veteran

    Ciao Roberto ti volevo chiedere come faccio, se è possibile,  quando ottimizzo i vari opt di cui sopra, a testare anche il caso di disattivazione?

    Supponiamo che in un TS sia meglio disattivare opt3, ossia metterlo a 0, come faccio a testare lo 0 se l’ottimizzazione  parte da 1?

    #185616 quote
    MauroPro
    Participant
    Veteran

    Stesso problema se volessi ottimizzare il tipo di media, da 0 (semplice) a 8 (zeroLag). Manca lo 0, ossia mi rimane fuori la media semplice e parto da 1 (esponenziale).

    Si può testare anche il parametro ‘ nell’ottimizzazione?

    #185617 quote
    MauroPro
    Participant
    Veteran

    Parametro 0

    #185735 quote
    robertogozzi
    Moderator
    Master

    Dove c’è una variabile che a volte vuoi utilizzare, altre no, aggiungici OR 1:

    waitingBars = opt3 //OR 1

    quando la vuoi usare normalmente lasciala così, quando la vuoi disattivare basta che togli le due barre prime di OR 1.

Viewing 8 posts - 1 through 8 (of 8 total)
  • You must be logged in to reply to this topic.

Snippet unificati per gestione TS


ProOrder: Trading Automatico & Backtesting

New Reply
Author
author-avatar
MauroPro @mauropro Participant
Summary

This topic contains 7 replies,
has 2 voices, and was last updated by robertogozzi
4 years, 2 months ago.

Topic Details
Forum: ProOrder: Trading Automatico & Backtesting
Language: Italian
Started: 12/17/2021
Status: Active
Attachments: No files
Logo Logo
Loading...