STRATEGIA LONG / SHORT

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

     

    Ciao Roberto,

    cortesemente potresti pensarci tu? Non riesco a farlo girare, grazie.     Timeframe a 1 ora

    candela long, con body > 0.25% del range, si va long, con stop sotto il minimo + 1 pip; se il trade continua e la prossima è ancora long,  il nuovo stop, sarebbe il minimo + 1, della seconda candela long, e cosi a seguire. Se il trend ritraccia scatta lo stop, minimo + 1, dell’ultima candela long. Il target sarebbe a chiusura giornata, alle 23, o dopo un certo numero di ore, se possibile.

    candela short, con body > 0.25% del range, si va short, con stop sopra il massimo + 1 pip; se il trade va e la prossima è ancora short, il nuovo stop diventa il massimo + 1 della seconda candela short, e cosi a seguire. se i trend ristraccia scatta lo stop, massimo + 1, dell ‘ultima candela short. il target sempre come sopra detto. Grazie.

    IF close > open AND Not OnMarket THEN                             //  il body > 0.30% del range
       BUY 1 CONTRACT AT MARKET
    
    SET  STOP   pLOSS                                            // dinamico sul minimo della candela precedente che cambia,ogni ora,+ 1 pip
    StopLoss = abs(close - low[1])  +1                    //calcola differenza di prezzo
    SET STOP LOSS StopLoss / pipsize                 //setta lo SL in Pips
    
    //SET   TARGET   pPROFIT                                // a fine giornata alle 23 o per un periodo di tempo, per es. 3 ore     
    IF LongOnMarket AND (BarIndex - TradeIndex) = 3 THEN
       SELL AT MARKET
    ENDIF                                                               // 3 barre e poi si ricomincia
     
    ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
    
    IF close < open AND Not OnMarket THEN        //  il body > 0.30% del range
       SELLSHORT   1 CONTRACT AT MARKET
    
    SET STOP   pLOSS                                          // dinamico sul massimo della candela precedente che cambia, ogni ora, + 1 pip
    StopLoss = abs(close - high[1])  +1                    //calcola differenza di prezzo
    SET STOP LOSS StopLoss / pipsize                 //setta lo SL in Pips
    
    //SET   TARGET   pPROFIT                                // a fine giornata alle 23 o per un periodo di tempo, per es. 3 ore     
    IF  SELLSHORT  OnMarket    AND (BarIndex - TradeIndex) = 3 THEN
       SELL AT MARKET
    ENDIF                                                               // 3 barre e poi si ricomincia
    
    
    #151987 quote
    robertogozzi
    Moderator
    Master

    Non vedo le condizioni di entrata.

    #152010 quote
    Gaspare
    Participant
    Veteran

     

    scusa Roberto

    DEFPARAM CumulateOrders = false           // timeframe  h1

    DEFPARAM FLATBEFORE=010000

    DEFPARAM FLATAFTER=230000

    basta solo una candela, long o short, per entrare,

    IF close > open AND Not OnMarket THEN                             //  il body > 0.30% del range
       BUY 1 CONTRACT AT MARKET
    IF close < open AND Not OnMarket THEN        //  il body > 0.30% del range
       SELLSHORT   1 CONTRACT AT MARKET
    #152027 quote
    robertogozzi
    Moderator
    Master

    Hai messo lo stesso post di cui sopra, perché? Volevo che tu mettessi il codice che hai creato te per verificare cos’ha di sbagliato.

    In ogni caso usa “Insert PRT code” quando posti il codice. Grazie 🙂

    Comunque appna ho un pò di tempo te lo faccio.

    #152031 quote
    Gaspare
    Participant
    Veteran

    certamente Roberto, abbi pazienza,

    purtroppo sono consapevole dei miei limiti di programmazione

    e che devo studiare ancora, e tanto. Grazie

    #152324 quote
    robertogozzi
    Moderator
    Master

    Alle righe 6 e 20 stai mischiando Pips con Prezzi, hai due alternative:

    • usa pLOSS al posto di LOSS
    • togli / PipsSize

    Ad ogni modo questo è il mio codice:

    DEFPARAM CumulateOrders = false
    Bullish   = close > open
    Bearish   = close < open
    Body      = abs(close - open)
    IF Not Onmarket THEN
       StopLoss  = 0
       NewSL     = 0
    ENDIF
    LongCond  = Bullish AND (Body > (Range * 0.25))
    ShortCond = Bearish AND (Body > (Range * 0.25))
    // LONG
    IF LongCond  AND Not OnMarket THEN
       BUY 1 CONTRACT AT MARKET
       NewSL = close - (abs(close - low) + 1 * pipsize)
       set target pprofit 150
    ENDIF
    // Aggiornare lo Stop Loss ad ogni candela rialzista, se necessario
    IF LongOnMarket  THEN
       IF Bullish THEN
          StopLoss = low - (1 *pipsize)
          NewSL    = max(NewSL,StopLoss)
       ENDIF
    ENDIF
    // SHORT
    IF ShortCond AND Not OnMarket THEN
       SELLSHORT 1 CONTRACT AT MARKET
       NewSL = close + (abs(close - high) + 1 * pipsize)
       set target pprofit 150
    ENDIF
    // Aggiornare lo Stop Loss ad ogni candela ribassista, se necessario
    IF ShortOnMarket THEN
       IF Bearish THEN
          StopLoss = high + (1 *pipsize)
          NewSL    = min(NewSL,StopLoss)
       ENDIF
    ENDIF
    // Uscita in STOP
    IF NewSL > 0 THEN
       SELL      AT NewSL STOP
       EXITSHORT AT NewSL STOP
    ENDIF
    graphonprice tradeprice
    graphonprice NewSL coloured(255,0,0,255)

    ho inserito un TARGET PROFIT tanto per fare delle prove.

    Ho aggiunto GRAPHONPRICE alla fine permonuitorare, sulla candele stesse, sia il prezzo d’entrata che lo stop loss (in rosso).

    #152346 quote
    Gaspare
    Participant
    Veteran

    Grazie Roberto, appena posso lo provo.

    Una richiesta: si puo’ aggiungere il target alla 2° o 3° candela in profitto?

    Anzichè chiudere la posizione a fine giornata?

    Se attivo il TS dalle ore 01 00 fino alle 23 00 e poichè lo uso su un timeframe h1,

    potrei fare un test orario, di ora in ora, per vedere in quale fascia oraria sia piu’profittevole, BIAS.

    e quindi scegliere l’intervallo ottimale.

    Ti ringrazio

    #152349 quote
    robertogozzi
    Moderator
    Master

    Per mettere un’uscita dopo N candele in profitto:

    IF summation[3](PositionPerf > 0) = 3 THEN
       SELL      AT MARKET
       EXITSHORT AT MARKET
    ENDIF
Viewing 8 posts - 1 through 8 (of 8 total)
  • You must be logged in to reply to this topic.

STRATEGIA LONG / SHORT


ProOrder: Trading Automatico & Backtesting

New Reply
Author
author-avatar
Gaspare @gaspare Participant
Summary

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

Topic Details
Forum: ProOrder: Trading Automatico & Backtesting
Language: Italian
Started: 11/28/2020
Status: Active
Attachments: No files
Logo Logo
Loading...