SELL SOPRA BOLLINGER

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

    Buonasera,

    sto provando a scrivere un codice, sono alle prime armi..

    Guardando l’immagine allegata, vorrei che il sistema vendesse al prezzo della barra successiva (cerchio rosso) ma, avendo impostato un SET STOP pTRAILING 1 (valido per le altri condizioni/casistiche previste), mi sembra di intuire che l’algoritmo non vende.

    Come posso fare ad ottenere l’obbiettivo desiderato?

    Qua sotto in corsivo  riporto il codice che avevo scritto ma non funziona.

    // Definition of code parameters
    
    MyBollingerUp = BollingerUp [25] (Close)
    
     
    
    // Condizione 2 per uscire da posizioni long: se un valore va oltre BOLLINGER UP
    IF LONGONMARKET AND Low > MyBollingerUp THEN
    SELL AT MARKET
    ENDIF
    
    // Stop e target: Inserisci qui i tuoi stop di protezione e profit target
    SET STOP pTRAILING 1
    
    SET TARGET pPROFIT 10

    Altra domanda, è possibile fare il debug del codice scritto?

    Grazie anticipatamente a tutti per il Vs prezioso contributo

    screenshot.png screenshot.png
    #123205 quote
    robertogozzi
    Moderator
    Master

    Non vende perché SELL non serve a vendere, ma a chiudere un precedente BUY (quindi chiude un entrata Long)

    Per vendere devi usare SELLSHORT, che dovrai chiudere con EXITSHORT

    Perché alla riga 8 hai messo IF LONGONMARKET?  (Presuppone che tu sia già entrato Long, ma non hai messo nessuna istruzione BUY !)

    Sempre alla 8, se vuoi entrare quando LOW è inferiore, perché hai messo l’operatore “>” (maggiore) ?

    #123207 quote
    Dunlop
    Participant
    New

    Non vende perché SELL non serve a vendere, ma a chiudere un precedente BUY (quindi chiude un entrata Long) Per vendere devi usare SELLSHORT, che dovrai chiudere con EXITSHORT Perché alla riga 8 hai messo IF LONGONMARKET?  (Presuppone che tu sia già entrato Long, ma non hai messo nessuna istruzione BUY !)

    Nella parte di codice precedente che non avevo scritto c’è BUY:

    IF NOT LONGONMARKET AND c1 THEN
    BUY 1000 SHARES AT MARKET
    ENDIF

    Perché alla riga 8 hai messo IF LONGONMARKET?  (Presuppone che tu sia già entrato Long, ma non hai messo nessuna istruzione BUY !) Sempre alla 8, se vuoi entrare quando LOW è inferiore, perché hai messo l’operatore “>” (maggiore) ?

    Ho messo LONGONMARKET perchè nella precedente parte di codice sono entrato long.
    Ho messo LOW perchè pensavo così di indicare la seguente istruzione:

    se il low della shadow dell’ultima barra (nello screenshot la barra verde) è superiore alla linea di bollinger superiore, allora vendi al prezzo di mercato.

    Dome mi sono perso?

    Spero di essermi riuscito a spiegare, grazie mille!

     

    #123210 quote
    robertogozzi
    Moderator
    Master

    Se per VENDERE intendi, quindi, chiudere un’operazione Long il codice va bene.

    Verifica che quel LOW della candela verde sia realmente SOPRA alla banda bollinger, basta che tenga il mouse fermo su quella barra e ti appariranno i valori della candela e degli indicatori, così capirai se è davvero sopra oppure no.

    #123223 quote
    Dunlop
    Participant
    New

    Si per vendere, intendevo uscire da una posizione LONG (si intuisce che sono un novellino ahah..).

    Forse ho capito perchè non funziona, in effetti nel grafico con frame a 1 minuto (vedi allegato),   la barra è sopra alla linea di Bollinger ma, se cambio frame tipo a 5 minuti, questo non accade.

    Può essere questo il motivo? Come comunico al sw di utilizzare il frame a un minuto?

    Grazie ancora per il prezioso contributo.

    screenshot-valori.jpg screenshot-valori.jpg
    #123235 quote
    robertogozzi
    Moderator
    Master

    Basta che tu esegua la strategia dal TF a 1 minuto.

    Le strategie, come gli indicatori, operano sempre sul TF in uso in quel momento.

    #123241 quote
    Dunlop
    Participant
    New

    Ok, stavo già operando in quel modo, allora non mi spiego perchè non funziona 🙂

    Può essere per stop e target indicati? Mi sa che mi sono perso da qualche parte.. boh

    // Condizione 2 per uscire da posizioni long: se un valore va oltre BOLLINGER UP
    IF LONGONMARKET AND Low > MyBollingerUp THEN
    SELL AT MARKET
    ENDIF
    
    // Stop e target: Inserisci qui i tuoi stop di protezione e profit target
    SET STOP pTRAILING 1
    
    SET TARGET pPROFIT 10
    

     

    Può essere dovuto

    #123259 quote
    robertogozzi
    Moderator
    Master

    Il fatto che apra o non apra posizioni non dipende dagli stop.

    Certo, il target è piuttosto ravvicinato, siamo al limite con il minimo di distanza richiesta dal broker (devi verificare sul loro sito qunt’è la distanza minima per gli ordini pendenti e a mercato).

    SET STOP pTRAILING è anch’esso molto stretto. In ogni caso ti consiglio di non usare questo comando per il trailing stop, ma di sostituirlo con codice apposito, il più semplice, chiaro ed usato è quello di Nicolas (le righe 17-56 sono già pronte per essere aggiunte alla fine della tua strategia, devi solo cambiare i due valori iniziali secondo le tue necessità): https://www.prorealcode.com/blog/trading/complete-trailing-stop-code-function/

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

SELL SOPRA BOLLINGER


ProOrder: Trading Automatico & Backtesting

New Reply
Author
author-avatar
Dunlop @dunlop Participant
Summary

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

Topic Details
Forum: ProOrder: Trading Automatico & Backtesting
Language: Italian
Started: 03/24/2020
Status: Active
Attachments: 2 files
Logo Logo
Loading...