NON RIPETERE LE OPERAZIONI

Viewing 8 posts - 1 through 8 (of 8 total)
  • Author
    Posts
  • #75055 quote
    andrea1
    Participant
    New

    Buongiorno a tutti, non riesco a trovare il comando per far sì che il trading system non continui a entrare a mercato. Cerco di spiegarmi meglio:

    Ipotizziamo di entrare long al verificarsi di una condizione, come fosse un semaforo, che può essere zero oppure uno. Si verifica la condizione 1, il ts entra long, viene raggiunto il profit e l’operazione chiusa. Fin qui tutto ok, ma alla barra successiva il ts rientra long perchè la condizione 1 continua a essere attiva. Io vorrei evitare questa ripetizione, un colpo solo per ogni semaforo in sostanza, quale soluzione posso utilizzare?

    Grazie

    #75057 quote
    robertogozzi
    Moderator
    Master

    Questo è il codice, dovrai stabilire tu quando rimettere la variabile TradeON ad 1 per ricominciare, magari dopo un certo numero di barre, oppure il giorno successivo.

    Puoi anche usare due variabili, una per i LONG ed una per gli SHORT, se vuoi.

    ONCE TradeON = 1                             //Attivare il trading per default
    IF MieCondizioni AND Not OnMarket AND TradeON THEN
       BUY 1 CONTRACT AT MARKET
       TradeON = 0                               //Disattivare il trading ppena entrato a mercato
    ENDIF
    #75058 quote
    andrea1
    Participant
    New

    Ok grazie molto gentile, provo e farò sapere!

    #75090 quote
    andrea1
    Participant
    New

    Gentile Roberto ho provato ma non genera nulla, non entra a mercato.

    
    ONCE TradeON = 1 //Attivare il trading per default
    IF C1 AND Not OnMarket AND TradeON THEN
    BUY 1 CONTRACT AT MARKET
    TradeON = 0 //Disattivare il trading appena entrato a mercato
    ENDIF
    #75093 quote
    robertogozzi
    Moderator
    Master

    Hai messo delle condizioni possibili in C1?

    Perché se sono condizioni estramente rare da verificarsi può capitare.

    Prova con

    C1 = close CROSSES OVER average[20]
    #75096 quote
    andrea1
    Participant
    New

    Si si la condizione si è verificata 4 volte nelle ultime 5 ore, ma anche mettendo così non entra in posizione:

    C3 = close CROSSES OVER average[20]
    
    ONCE TradeON = 1 //Attivare il trading per default
    IF  C3 AND Not OnMarket AND TradeON THEN
    BUY 1 CONTRACT AT MARKET
    TradeON = 0 //Disattivare il trading appena entrato a mercato
    ENDIF
    
    #75100 quote
    robertogozzi
    Moderator
    Master

    E’ vero, mettendo DEFPARAM PreLoadBars=0 all’inizio funziona, però non ha le barre per potere calcolare la media.

    Ad ogni modo ho modificato il codice in modo che funzioni, fa solo un’operazione e, se hai indicato un capitale elevato, non termina in quanto non c’è una codizione per farlo.

    C3 = close CROSSES OVER average[20]
    if Not OnMarket AND StrategyProfit = 0 then
       TradeON = 1        //Attivare il trading per default
    ENDIF
    IF  C3 AND Not OnMarket AND TradeON THEN
       BUY 1 CONTRACT AT MARKET
       TradeON = 0        //Disattivare il trading appena entrato a mercato
    ENDIF
    
    #75111 quote
    andrea1
    Participant
    New

    Ok grazie, provo e farò sapere!

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

NON RIPETERE LE OPERAZIONI


ProOrder: Trading Automatico & Backtesting

New Reply
Author
author-avatar
andrea1 @andrea1 Participant
Summary

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

Topic Details
Forum: ProOrder: Trading Automatico & Backtesting
Language: Italian
Started: 07/02/2018
Status: Active
Attachments: No files
Logo Logo
Loading...