COME INSERIRE UNA CONDIZIONE DEL RANGE DI BARRA

Viewing 12 posts - 1 through 12 (of 12 total)
  • Author
    Posts
  • #90945 quote
    cris_cc
    Participant
    Junior

    Buongiorno,  in questo semplice TS devo inserire una terza condizione , che il range della barra odierna sia inferiore del range della barra di ieri per entrare in posizione.

    inserisco una foto del TS

    se qualcuno mi puo’ gentilmente aiutare,

    grazie cristian

    Schermata-2019-02-09-alle-21.39.03.png Schermata-2019-02-09-alle-21.39.03.png
    #90947 quote
    robertogozzi
    Moderator
    Master

    Posta il codice facendo il copia e incolla usando il tasto “insert PRT code”.

    Aggiungi alla riga 12 la seguente condizione:

    AND range < range[1]
    #90948 quote
    cris_cc
    Participant
    Junior

    OK grazie Roberto , sempre gentilissimo

    #90962 quote
    cris_cc
    Participant
    Junior

    Buongiorno, nello TS dovrei inserire l’ordine limit a condizione che il prezzo di sia inferiore della candela di oggi ( nextbar, L , limit)

    e l’uscita e’ sempre con ordine limit se la barra e’ sopra la barra di oggi (nextbar, H, limit)

    non riesco a inserire questa condizione, grazie

    // Definizione dei parametri del codice
    DEFPARAM CumulateOrders = False // Posizioni cumulate disattivate
    
    // Condizioni per entrare su posizioni long
    indicator1 = close
    indicator2 = Average[200](close)
    c1 = (indicator1 > indicator2)
    
    indicator3 = RSI[2](close)
    c2 = (indicator3 < 20)
    
    IF c1 AND c2  AND range < range[1] THEN
    BUY 1 SHARES AT MARKET
    ENDIF
    
    // Condizioni per uscire da posizioni long
    indicator4 = RSI[2](close)
    c3 = (indicator4 > 70)
    
    IF c3 THEN
    SELL  AT MARKET
    ENDIF
    
    // Stop e target
    SET STOP $LOSS 2000
    
    #90964 quote
    robertogozzi
    Moderator
    Master

    Che significa la frase “a condizione che il prezzo di sia inferiore della candela di oggi”?

    Che significa la frase “e l’uscita e’ sempre con ordine limit se la barra e’ sopra la barra di oggi”?

    Fai degli esempi per favore.

    #91004 quote
    cris_cc
    Participant
    Junior

    Ti allego una foto per far capire meglio, l’ordine limit  va a mercato con l’apertura al di sotto del minimo precedente e va in vendita limit ad di sopra del massimo precedente..

    TS-MM.jpg TS-MM.jpg
    #91203 quote
    robertogozzi
    Moderator
    Master

    Nel tuo codice sopra tu entri a mercato a quelle condizioni (prezzo > media a 200 e Rsi a 2 periodi < 20) sulla candela corrente.

    Vuoi trasformare l’ordine a mercato in un ordine LIMIT per entrare in posizione (Long) solo se il prezzo scende sotto il minimo di quale barra? qual’è quella che di setup, cioè quella che ti fa dire “ok, adesso ci sono le condizioni, appena scende sotto il minimo entro in posizione Long“?

    Ho cambiato il tuo esempio con due ordini pendenti, per entrare sul Minimo ed uscire sul Massimo, ma non so se è questo che intendevi:

    DEFPARAM CumulateOrders = False
    IF LongOnMarket THEN
       SELL AT Massimo STOP
    ENDIF
    indicator1 = close
    indicator2 = Average[200](close)
    c1 = (indicator1 > indicator2)
    indicator3 = RSI[2](close)
    c2 = (indicator3 < 20)
    IF c1 AND c2  AND range < range[1] AND Not OnMarket THEN
       BUY 1 SHARES AT low LIMIT
       Massimo = high
       SELL AT Massimo STOP
    ENDIF
    indicator4 = RSI[2](close)
    c3 = (indicator4 > 70)
    IF c3 AND LongOnMarket THEN
       SELL  AT MARKET
    ENDIF
    SET STOP $LOSS 2000
    #91207 quote
    cris_cc
    Participant
    Junior

    Nel tuo codice sopra tu entri a mercato a quelle condizioni (prezzo > media a 200 e Rsi a 2 periodi < 20) sulla candela corrente.

    SI ENTRA :se c’è un ulteriore debolezza della barra di domani entro con il setup della candela di oggi ma condizione che domani il prezzo si abbassi ancora .(ORDINE LIMIT) altrimenti non si entra a mercato

    SI ESCE CON DUE CONDIZIONI  QUANDO RSI>70 E IL PREZZO SIA SOPRA AL PREZZO H DELLA BARRA RSI>70

    #91231 quote
    robertogozzi
    Moderator
    Master

    SI ENTRA :se c’è un ulteriore debolezza della barra di domani entro con il setup della candela di oggi ma condizione che domani il prezzo si abbassi ancora .(ORDINE LIMIT) altrimenti non si entra a mercato

    L’ordine LIMIT per potere entrare domani va inserito oggi, quindi sulla base di quale minimo? Non di domani perché non si sa. Se vuoi entrare a quel minimo dovrai farlo a mercato, non con un ordine LIMIT

    Nel tuo ragionamento noto che parli del futuro perché hai un grafico davanti e tu lo vedi oggi, quindi il tuo passato (visivamente) conosce il futuro, un programma non può farlo. Deve entrare sulla base di dati certi e ben specificati. Se gli dico di entrare a 1.23187, non entrerà né a 1,23188 né a 1.23186; in realtà a causa di un pò di slippage entra anche con differenze maggiori, ma il mio discorso era solo per farti capire che parole come “debolezza” non possono essere espresse con un codice, occorre dire rialzo, ribasso, maggiore, minore, sempre accompagnando questi termini con un dato certo, es: Superamento del minimo di ieri, 3 pips oltre la media, ecc… mentre non si può dire Appena sopra la media, perché non viene indicato nessun valore preciso.

    Si deve SEMPRE parlare del presente o del passato, MAI del futuro perché non esiste, quindi si può, sulla base di alcune condizioni di oggi entrare alla rottura dei Massimi/Minimi di ieri.

    Se vuoi entrare dopo avere visto i Massimi/Minimi di domani, devi attendere un’altra barra e poi fare il ragionamento di cui sopra (cioè al passato).

    #91232 quote
    cris_cc
    Participant
    Junior

    MMMM, HO CAPITO…  ALLEGO UNA FOTO DI COSA AVEVO IN MENTE….   DOPO FARO’ UN PO’ DI CHIAREZZA

    TS.jpg TS.jpg
    #91235 quote
    robertogozzi
    Moderator
    Master

    Quindi, ragionando al passato, occorre spostare l’entrata di una barra indietro:

    DEFPARAM CumulateOrders = False
    IF LongOnMarket THEN
       SELL AT Massimo STOP
    ENDIF
    indicator1 = close
    indicator2 = Average[200](close)
    c1 = (indicator1 > indicator2)
    indicator3 = RSI[2](close)
    c2 = (indicator3 < 20)
    IF c1[1] AND c2[1]  AND range[1] < range[2] AND close < low[1] AND Not OnMarket THEN
       BUY 1 SHARES AT low LIMIT
       Massimo = high[1]
       SELL AT Massimo STOP
    ENDIF
    indicator4 = RSI[2](close)
    c3 = (indicator4 > 70)
    IF c3 AND LongOnMarket THEN
       SELL  AT MARKET
    ENDIF
    SET STOP $LOSS 2000
    #91243 quote
    cris_cc
    Participant
    Junior

    Grazie della pazienza Roberto, cosi’ il sistema nn funziona… ma ho provato a inserire il codice cosi’ come te lo posto e in questo modo funziona… nn so che ho fatto…?

    ti allego una foto,

    grazie ancora Roberto, magari mi fai sapere che ne pensi

    // Definizione dei parametri del codice
    DEFPARAM CumulateOrders = False // Posizioni cumulate disattivate
    
    // Condizioni per entrare su posizioni long
    indicator1 = close
    indicator2 = Average[200](close)
    c1 = (indicator1 > indicator2)
    
    indicator3 = RSI[2](close)
    c2 = (indicator3 < 20)
    
    IF c1 AND c2  AND range < range[1] THEN
    BUY 1 SHARES AT low LIMIT
    ENDIF
    
    // Condizioni per uscire da posizioni long
    indicator4 = RSI[2](close)
    c3 = (indicator4 > 70)
    
    IF c3 THEN
    SELL   1 SHARES AT high LIMIT
    ENDIF
    
    // Stop e target
    SET STOP $LOSS 2000
    Schermata-2019-02-12-alle-22.38.47.png Schermata-2019-02-12-alle-22.38.47.png
Viewing 12 posts - 1 through 12 (of 12 total)
  • You must be logged in to reply to this topic.

COME INSERIRE UNA CONDIZIONE DEL RANGE DI BARRA


ProOrder: Trading Automatico & Backtesting

New Reply
Author
author-avatar
cris_cc @cris_cc Participant
Summary

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

Topic Details
Forum: ProOrder: Trading Automatico & Backtesting
Language: Italian
Started: 02/09/2019
Status: Active
Attachments: 4 files
Logo Logo
Loading...