INDICATORE > INDICATORE PRECEDENTE

Viewing 13 posts - 1 through 13 (of 13 total)
  • Author
    Posts
  • #137258 quote
    romanelli4
    Participant
    Average

    Buonasera,

    dovrei codificare una cosa molto semplice

    ma non capisco come fare.

    allegato :

    se c>a e close >b

    buy….

    Chiedo cortesemente aiuto.

    max

    IF indicatorelow >indicatorelow[1] and close > indicatore high THEN 
    bui 1 contract at market
    endif
    Immagine-1.png Immagine-1.png
    #137263 quote
    robertogozzi
    Moderator
    Master
    IF c > a AND close > b THEN

    ma il problema è come sono definite a, b e c?

    Da dove saltano fuori? Come le hai calcolate?

    A occhio e croce mi sembra il mio indicatore https://www.prorealcode.com/prorealtime-indicators/pivot-support-resistance-zones/ (Pivot Support/Resistance Zones), però il mio NON restituisce niente, è solo visivo, se è stato modificato occorre sapere come.

    #137265 quote
    romanelli4
    Participant
    Average

    Grazie Roberto,

    si è quello…e come si puo’ fare secondo te??

    grazie mille

    max

    #137269 quote
    robertogozzi
    Moderator
    Master

    C > A, però anche B > C, e che li prezzo rompa al rialzo B.

    Te lo modifico in modo che ti restituisca il Prezzo quando trova una Resistenza/Supporto.

    Dopodiché quando lo richiami da una tua strategia occorre salvare gli ultimi 3 dati e fare i confronti.

    Questo è l’indicatore originale, modificato affinché restituisca il prezzo (Resistenza o Supporto che sia), l’ho chiamato SRtest (non importa che tu lo metta sul grafico, basta che sia stato importato in ProBuilder, sul grafico mettici l’originale):

    PivotBAR        = 2                      //2  bars AFTER  pivot
    LookBack        = 4                      //4  bars BEFORE pivot
    ResistancePrice = 0
    SupportPrice    = 0
    BarLookBack  = PivotBAR + 1
    IF low[PivotBAR] < lowest[LookBack](low)[BarLookBack] THEN
       IF low[PivotBAR] = lowest[BarLookBack](low) THEN
          SupportPrice  = low[PivotBAR]
       ENDIF
    ENDIF
    IF high[PivotBAR] > highest[LookBack](high)[BarLookBack] THEN
       IF high[PivotBAR]  = highest[BarLookBack](high) THEN
          ResistancePrice = high[PivotBAR]//high[BarIndex - MyResistance]
       ENDIF
    ENDIF
    RETURN ResistancePrice + SupportPrice

    e questa è la strategia che richiama SRtest ed entra a mercato:

    DEFPARAM CumulateOrders = false
    ONCE PrezzoC = 0
    ONCE PrezzoB = 0
    ONCE PrezzoA = 0
    Prezzo = CALL SRtest
    IF Prezzo > 0 THEN
       PrezzoA = PrezzoB
       PrezzoB = PrezzoC
       PrezzoC = Prezzo
    ENDIF
    Cond    = PrezzoB > PrezzoA AND PrezzoB > PrezzoC
    IF close CROSSES OVER PrezzoB AND Cond > 0 THEN
       BUY 1 Contract At Market
    ENDIF
    SET TARGET pPROFIT 400
    SET STOP   pLOSS   100
    SRtest.itf StrategiaSR.itf
    #137272 quote
    romanelli4
    Participant
    Average

    Grazie Roberto!!!!

    ci lavoro il we

    grazie ancora

    max!

    #137935 quote
    romanelli4
    Participant
    Average
    DEFPARAM CumulateOrders = false/////posizioni cumulative disattivate
    ONCE PrezzoC = 0////una sola volta il PrezzoC è falso
    ONCE PrezzoB = 0////una sola volta il PrezzoB è falso
    ONCE PrezzoA = 0////una sola volta il PrezzoA è falso
    Prezzo = CALL SRtest  /////Prezzo richiama SRtest....Supportprice e Resistenceprice
    IF Prezzo > 0 THEN////Se il prezzo è diventato >0 .....quindi segnala un supporto od una resistenza....allora
       PrezzoA = PrezzoB ///il PrezzoA= PrezzoB
       PrezzoB = PrezzoC ////il PrezzoB = PrezzoC
       PrezzoC = Prezzo////il PrezzoC = Prezzo.......che vuol dire tutto questo???? Perchè li fai tutti uguali???
    ENDIF////fine
    Cond    = PrezzoB > PrezzoA AND PrezzoB > PrezzoC/// la mia condizione è se il PrezzoB è maggiore di Prezzo A e PrezzoB è maggiore di PrezzoC ....come sono collegati con Supportprice e Resistenceprice???
    IF close CROSSES OVER PrezzoB AND Cond > 0 THEN////se la close incrocia al rialzo PrezzoB e la mia condizione è vera allora compra.....
       BUY 1 Contract At Market
    ENDIF
    SET TARGET pPROFIT 400
    SET STOP   pLOSS   10

    Salve Roberto,

    è qualche giorno che mi scervello ma non capisco la logica sottostante….

    provo a leggerti quello che hai scritto per come lo capisco io….o meglio per come non lo capisco.

    trovi la mia lettura accanto al codice in grigio.

    Se ti va di spigarmela te ne sarei grato.

    esiste un manuale prorealcode in italiano….in modo che possa studiarlo??

    Grazie tante

    Apresto

    max

    #137941 quote

    Ciao,

    Qui trovi il pdf in italiano da scaricare.

    https://trading.prorealtime.com/it/aiuto-alla-programmazione

    #137943 quote

    Ma quello che ti ha fatto Roberto non puoi trovarlo….è stato creato su tua richiesta…..

    #137945 quote
    robertogozzi
    Moderator
    Master

    Le righe 2, 3 e 4 sono interpretate correttamente. Servono ad INIZIALIZZARE una variabile, cioè ad assegnargli un valore iniziale certo, in questo caso 0, poi saranno cambiate a piacimento nel codice, quando necessario.

    Le righe 5 e 6 sono interpretate correttamente.

    Le righe 7, 8 e 9 servono per aggiornare i valori. Supponiamo di avere:

    PrezzoC = 12300
    PrezzoB = 12400
    PrezzoA = 12450
    Prezzo  = 12200  //nuova resistenza/supporto trovato

    dal momento che te ne interessano solo 3 (A, B e C)  se fai:

    PrezzoC = Prezzo

    perdi il valore che C aveva precedentemente, siccome t’interessa mantenere gli ultimi tre devi perdere il più vecchio, che è A, quindi scrivi:

    PrezzoA = PrezzoB  //A lo sostituiamo con B e diventa il più vecchio
    PrezzoB = PrezzoC  //B lo sostituiamo con C e diventa quello intermedio
    PrezzoC = Prezzo   //C lo sostituiamo con il nuovo e diventa il più recente

    Non esiste un manuale per spiegarlo, lo impari programmando. E’ la logica che ti porta a fare così per aggiornare i valori. Se hai un’esperienza di programmazione già lo sai, altrimenti devi impararlo leggendo molti codici presenti sul forum, perdendoci molto tempo, magari facendo qualche domanda.

    #137997 quote
    romanelli4
    Participant
    Average

    Grazie Molte a tutti per la disponibilità!

    max

    #160512 quote
    romanelli4
    Participant
    Average

    Buongiorno,

    ci sto ancora lavorando su……

    come faccio a dire che il prezzoA è valido solo se rsi<30 ???

    Grazie mille

    Massimo

    #160516 quote
    robertogozzi
    Moderator
    Master

    Aggiungi questa condizione:

    If Rsi[14](close) >= 30 then
       PrezzoA = 0
    Endif
    #160517 quote
    romanelli4
    Participant
    Average

    Grazie Roberto,

    ancora mi rendo conto di essere lontano dal capire la logica di come ragionare per programmare

    comunque non mi arrendo

    grazie dell’aiuto

    Massimo

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

INDICATORE > INDICATORE PRECEDENTE


ProOrder: Trading Automatico & Backtesting

New Reply
Author
author-avatar
romanelli4 @romanelli4 Participant
Summary

This topic contains 12 replies,
has 3 voices, and was last updated by romanelli4
5 years ago.

Topic Details
Forum: ProOrder: Trading Automatico & Backtesting
Language: Italian
Started: 06/26/2020
Status: Active
Attachments: 3 files
Logo Logo
Loading...