Pagina 1 di 2 12 Ultima
Risultati da 1 a 10 di 18
  1. #1

    Data Registrazione
    Sep 2013
    Località
    Monza
    Messaggi
    186

    PERIODO VARIABILE DINAMICO: vogliamo collaborare per crearcelo assieme ?

    Buongiorno a tutti,
    questo post è aperto alle idee di tutti gli utenti, programmatori e non !!!
    -
    Volete suggerire un'idea solo a parole, ma non sapete programmarla.
    L'importante è che riusciate a descriverla non in modo astratto, ma in modo concreto.
    Poi se ci riusciamo proveremo a tradurre in linee di codice la vostra idea
    (compatibilmente con il poco tempo libero a disposizione e le limitate capacità di programmazione !!!).
    -
    Il TS basato su breakout dinamico proposto da Thalos mi ha dato lo spunto per questa idea.
    Il sogno penso di ogni trader è l'aver a disposizione degli indicatori in grado di adeguarsi alla volatilità
    del mercato, in modo da accelerare e quindi ridurre il ritardo quando il mercato è veloce,
    e al contrario di rallentare nelle fasi laterali per ridurre i falsi segnali.
    -
    Chiaramente sto scoprendo l'acqua calda, infatti sono decenni che analisti e ricercatori con i controc...
    ci stanno lavorando fornendoci tutta quella lunga lista di indicatori che trovate in beeTrader.
    Volando molto più basso, senza pretendere di essere i Wilder della situazione,
    qui ognuno potrà esprimere la propria idea o apportare il proprio bagaglio tecnico,
    anche riportato da riviste o libri. Qui vale copiare ,modificare e migliorare.
    L'importante è ottenere qualcosa potenzialmente utile per il nostro trading !!!
    E senza primi della classe !!!
    -
    Tanto per cominciare ho allegato una funzione, come detto, ispirata da Thalos e leggermente modificata.
    Questa permette di calcolare un periodo che varia tra un minimo ed un massimo, in base alla deviazione
    standard di close n-periodi. Ho invertito il segno (1-DeltaHistVol) per fare in modo che il periodo si accorciasse
    con il crescere della volatilità, e viceversa si allungasse nelle fasi più laterali.
    -
    Seguono il plot del periodo come indicatore tanto per visualizzare graficamente, ed un esempio di utilizzo in una EMA.
    Purtroppo fino alla prossima release non sarà funzionante, perché EMA non può ricevere come vettore un'altra funzione.
    -
    Saluti
    Massimo

    # PERIODO_DINAMICO Funzione
    
    #
    
    # Ritorna un valore di periodo variabile compreso tra un valore minimo e massimo.
    
    # E' calcolato in base alla deviazione standard Close n-periodi
    
    
    
    
    
    INPUTS: @MaxPeriodo(60), @MinPeriodo(5), @PeriodoVolatilita(30)
    
    
    
    SET HistVol = SDV(CLOSE , @PeriodoVolatilita , 1, SIMPLE)
    
    SET YestHistVol = REF(HistVol, 1)
    
    SET DeltaHistVol1 = (HistVol - REF(HistVol, 1)) / HistVol
    
    SET DeltaHistVol = MINOF(DeltaHistVol1, 0.1)
    
    SET vPeriodoDinamico = BARLOOP (20, 1, MULTIPLY, (1 - DeltaHistVol), @MinPeriodo, @MaxPeriodo)
    
    SET PERIODO_DINAMICO = FLOOR(vPeriodoDinamico)
    
    
    
    #
    
    # Indicatore che plotta il valore restituito dalla funzione PERIODO_DINAMICO
    
    #
    
    INPUTS: @MaxPeriodo(60), @MinPeriodo(20), @PeriodoVolatilita(30)
    
    #
    
    SET PLOT1 = PERIODO_DINAMICO(@MaxPeriodo, @MinPeriodo, @PeriodoVolatilita)
    
    
    
    
    
    
    
    #
    
    # Indicatore che in futuro potrà plottare una EMA con periodo variabile dinamico.
    
    # Fino alla prossima release non funzionante, perché EMA non può ricevere vettore A come parametro !!!
    
    INPUTS: @MaxPeriodo(60), @MinPeriodo(20), @PeriodoVolatilita(30)
    
    #
    
    SET A = PERIODO_DINAMICO(@MaxPeriodo, @MinPeriodo, @PeriodoVolatilita)
    
    SET B = EMA(CLOSE , A)
    
    PRINT (A)
    
    SET PLOT1 = B
    Ultima modifica di maxmax68; 01-11-13 alle 12:07

  2. #2

    Data Registrazione
    Apr 2010
    Messaggi
    800
    Il BreakOut dinamico e' la frontiera da superare a cui tutti vorremmo ambire, vorrebbe dire riuscire ad avere una percentuale altissima di Trade vincenti, perché sarebbe l' unico vero filtro alle fasi laterali che danno al Trading la percentuale di perdita che purtroppo ad ora e' inevitabile..
    L' idea e' quella di riuscire a chiudere in un Canale virtuale riconoscibile dal TS la fase laterale...

    Io ci ho tentato anche modulando insieme piu' oscillatori, e per ora l' unico che mi ha dato dei risultati appena appena convincenti e' la combinazione di due Supertrend con diverso settaggio...


    Mi spiego meglio, il supertrend da solo e' un indicatore Trend Follower, ma se ne mettiamo due sovrapposti con settaggi diversi creano un canale dove all' interrno dovrebbero restare ed esserci i falsi segnali...

    La combinazione del BreakOut Dinamico con i due Supertrend potrebbe portare a una piacevole sorpresa...

    In settimana lo Studio meglio e provo a metterlo in esecuzione...

    Da provare..
    Ultima modifica di Thalos; 02-11-13 alle 19:47
    --- Trend my Friend ---

  3. #3
    L'avatar di Cagalli Tiziano
    Data Registrazione
    Dec 2007
    Località
    Rovigo
    Messaggi
    11,165
    Citazione Originariamente Scritto da maxmax68 Visualizza Messaggio
    Buongiorno a tutti,
    questo post è aperto alle idee di tutti gli utenti, programmatori e non !!!
    -
    Volete suggerire un'idea solo a parole, ma non sapete programmarla.
    L'importante è che riusciate a descriverla non in modo astratto, ma in modo concreto.
    Poi se ci riusciamo proveremo a tradurre in linee di codice la vostra idea
    (compatibilmente con il poco tempo libero a disposizione e le limitate capacità di programmazione !!!).
    -
    Il TS basato su breakout dinamico proposto da Thalos mi ha dato lo spunto per questa idea.
    Il sogno penso di ogni trader è l'aver a disposizione degli indicatori in grado di adeguarsi alla volatilità
    del mercato, in modo da accelerare e quindi ridurre il ritardo quando il mercato è veloce,
    e al contrario di rallentare nelle fasi laterali per ridurre i falsi segnali.
    -
    Chiaramente sto scoprendo l'acqua calda, infatti sono decenni che analisti e ricercatori con i controc...
    ci stanno lavorando fornendoci tutta quella lunga lista di indicatori che trovate in beeTrader.
    Volando molto più basso, senza pretendere di essere i Wilder della situazione,
    qui ognuno potrà esprimere la propria idea o apportare il proprio bagaglio tecnico,
    anche riportato da riviste o libri. Qui vale copiare ,modificare e migliorare.
    L'importante è ottenere qualcosa potenzialmente utile per il nostro trading !!!
    E senza primi della classe !!!
    -
    Tanto per cominciare ho allegato una funzione, come detto, ispirata da Thalos e leggermente modificata.
    Questa permette di calcolare un periodo che varia tra un minimo ed un massimo, in base alla deviazione
    standard di close n-periodi. Ho invertito il segno (1-DeltaHistVol) per fare in modo che il periodo si accorciasse
    con il crescere della volatilità, e viceversa si allungasse nelle fasi più laterali.
    -
    Seguono il plot del periodo come indicatore tanto per visualizzare graficamente, ed un esempio di utilizzo in una EMA.
    Purtroppo fino alla prossima release non sarà funzionante, perché EMA non può ricevere come vettore un'altra funzione.
    -
    Saluti
    Massimo

    # PERIODO_DINAMICO Funzione
    
    #
    
    # Ritorna un valore di periodo variabile compreso tra un valore minimo e massimo.
    
    # E' calcolato in base alla deviazione standard Close n-periodi
    
    
    
    
    
    INPUTS: @MaxPeriodo(60), @MinPeriodo(5), @PeriodoVolatilita(30)
    
    
    
    SET HistVol = SDV(CLOSE , @PeriodoVolatilita , 1, SIMPLE)
    
    SET YestHistVol = REF(HistVol, 1)
    
    SET DeltaHistVol1 = (HistVol - REF(HistVol, 1)) / HistVol
    
    SET DeltaHistVol = MINOF(DeltaHistVol1, 0.1)
    
    SET vPeriodoDinamico = BARLOOP (20, 1, MULTIPLY, (1 - DeltaHistVol), @MinPeriodo, @MaxPeriodo)
    
    SET PERIODO_DINAMICO = FLOOR(vPeriodoDinamico)
    
    
    
    #
    
    # Indicatore che plotta il valore restituito dalla funzione PERIODO_DINAMICO
    
    #
    
    INPUTS: @MaxPeriodo(60), @MinPeriodo(20), @PeriodoVolatilita(30)
    
    #
    
    SET PLOT1 = PERIODO_DINAMICO(@MaxPeriodo, @MinPeriodo, @PeriodoVolatilita)
    
    
    
    
    
    
    
    #
    
    # Indicatore che in futuro potrà plottare una EMA con periodo variabile dinamico.
    
    # Fino alla prossima release non funzionante, perché EMA non può ricevere vettore A come parametro !!!
    
    INPUTS: @MaxPeriodo(60), @MinPeriodo(20), @PeriodoVolatilita(30)
    
    #
    
    SET A = PERIODO_DINAMICO(@MaxPeriodo, @MinPeriodo, @PeriodoVolatilita)
    
    SET B = EMA(CLOSE , A)
    
    PRINT (A)
    
    SET PLOT1 = B
    Ottimo intervento max, ti ringrazio.
    ..se corri dietro a due lepri, non ne prendi nemmeno una.

  4. #4

    Data Registrazione
    Sep 2013
    Località
    Monza
    Messaggi
    186
    Citazione Originariamente Scritto da Thalos Visualizza Messaggio
    Il BreakOut dinamico e' la frontiera da superare a cui tutti vorremmo ambire, vorrebbe dire riuscire ad avere una percentuale altissima di Trade vincenti, perché sarebbe l' unico vero filtro alle fasi laterali che danno al Trading la percentuale di perdita che purtroppo ad ora e' inevitabile..
    L' idea e' quella di riuscire a chiudere in un Canale virtuale riconoscibile dal TS la fase laterale...

    Io ci ho tentato anche modulando insieme piu' oscillatori, e per ora l' unico che mi ha dato dei risultati appena appena convincenti e' la combinazione di due Supertrend con diverso settaggio...


    Mi spiego meglio, il supertrend da solo e' un indicatore Trend Follower, ma se ne mettiamo due sovrapposti con settaggi diversi creano un canale dove all' interrno dovrebbero restare ed esserci i falsi segnali...

    La combinazione del BreakOut Dinamico con i due Supertrend potrebbe portare a una piacevole sorpresa...

    In settimana lo Studio meglio e provo a metterlo in esecuzione...

    Da provare..
    Ciao Thalos,
    quella dei supertrend è un'idea interessante.
    Forse sarebbe ancora più interessante riuscire in qualche modo a
    personalizzare l'indicatore supertrend in modo da renderlo dinamico.
    Non è che qualcuno potrebbe postare il codice dell'indicatore supertrend,
    in modo da riscrivercelo a modo nostro ???
    Saluti
    Massimo

    PS Grazie a te Tiziano.

  5. #5
    L'avatar di Apocalips
    Data Registrazione
    May 2011
    Località
    PESCARA
    Messaggi
    2,630
    Citazione Originariamente Scritto da maxmax68 Visualizza Messaggio
    Ciao Thalos,
    Non è che qualcuno potrebbe postare il codice dell'indicatore supertrend,
    in modo da riscrivercelo a modo nostro ???
    Saluti
    Massimo
    codice supertrend in easylanguage:
    
    inputs:
    ATRLength(NumericSimple), ATRMult(NumericSimple), Strength(NumericSimple), STrend(NumericRef);
    
    vars:
    ATR(0),
    avg(0),
    dn(0),
    up(0),
    trend(1),
    flag(0),
    flagh(0),
    ST(0),
    hl(0);
    
    
    hl = Highest(High, ATRLength) - Lowest(Low, ATRLength);
    ATR = XAverage(hl, ATRLength);
    avg = (XAverage(high, Strength) + XAverage(low, Strength))/2;
    up = avg + ATR;
    dn = avg - ATR;
    
    if c > up[1] and c > Highest(High, Strength)[1] then
    trend = 1
    else if c < dn[1] and c < Lowest(Low, Strength)[1] then
    trend = -1;
    
    
    if trend < 0 and trend[1] > 0 then flag=1 else flag=0;
    if trend > 0 and trend[1] < 0 then flagh = 1 else flagh = 0;
    
    if trend > 0 and dn < dn[1] then dn=dn[1];
    if trend < 0 and up > up[1] then up=up[1];
    
    if flag = 1 then up = avg + ATR;
    if flagh = 1 then dn = avg - ATR;
    
    if trend = 1 then ST = dn else ST = up;
    SuperTrend = ST;
    STrend = trend;
    ....non si desidera ciò che è facile ottenere (Ovidio)....

  6. #6

    Data Registrazione
    Sep 2013
    Località
    Monza
    Messaggi
    186
    Grazie Apo,
    provo a tradurlo in EasyScript, se ci riesco.
    Saluti
    Massimo

  7. #7

    Data Registrazione
    Sep 2013
    Località
    Monza
    Messaggi
    186
    Citazione Originariamente Scritto da Apocalips Visualizza Messaggio
    codice supertrend in easylanguage:
    
    inputs:
    ATRLength(NumericSimple), ATRMult(NumericSimple), Strength(NumericSimple), STrend(NumericRef);
    
    vars:
    ATR(0),
    avg(0),
    dn(0),
    up(0),
    trend(1),
    flag(0),
    flagh(0),
    ST(0),
    hl(0);
    
    
    hl = Highest(High, ATRLength) - Lowest(Low, ATRLength);
    ATR = XAverage(hl, ATRLength);
    avg = (XAverage(high, Strength) + XAverage(low, Strength))/2;
    up = avg + ATR;
    dn = avg - ATR;
    
    if c > up[1] and c > Highest(High, Strength)[1] then
    trend = 1
    else if c < dn[1] and c < Lowest(Low, Strength)[1] then
    trend = -1;
    
    
    if trend < 0 and trend[1] > 0 then flag=1 else flag=0;
    if trend > 0 and trend[1] < 0 then flagh = 1 else flagh = 0;
    
    if trend > 0 and dn < dn[1] then dn=dn[1];
    if trend < 0 and up > up[1] then up=up[1];
    
    if flag = 1 then up = avg + ATR;
    if flagh = 1 then dn = avg - ATR;
    
    if trend = 1 then ST = dn else ST = up;
    SuperTrend = ST;
    STrend = trend;
    Poche semplici righe di EasyLanguage e EasyScript finisce al tappeto.
    -
    Per il momento non sono ancora riuscito a completare la traduzione del codice,
    e credo che dovremo aspettare che vengano aggiunte le nuove funzionalità di BARLOOP.
    Infatti quello che manca è la possibilità di scrivere:
    vUP = MINOF(vUP , REF(vUP ,1)) e
    vDN = MAXOF(vDN , REF(vDN ,1))
    per ottenere la parte orizzontale del SuperTrend.
    -
    Ho comunque cominciato a tradurre parzialmente il codice, e come pensavo,
    anche qui abbiamo a che fare con dei parametri che potrebbero essere ottimizzati in modo dinamico.
    In particolar modo vATRmult che è il numero di ATR che viene sommato o sottratto alla nostra media
    vAVG, determinando la distanza dell'indicatore SuperTrend dai prezzi,
    ma anche vStrength, che è il periodo della media vAVG.
    -
    Segue indicatore che li plotta per visualizzare graficamente.
    Saluti
    Massimo
    # 
    # Parte iniziale del codice SuperTrend,
    # in attesa delle nuove funzioni BARLOOP di EasyScript
    #
    #
    INPUTS: @ATRlenght(14), @ATRmult(1.5), @Strength(10)
    #
    SET H = MAX(HIGH, @ATRlenght)
    SET L = MIN(LOW, @ATRlenght)
    SET HL = H - L
    SET vATR = EMA(HL , @ATRlenght)
    SET vAVG = (EMA(HIGH, @Strength) + EMA(LOW, @Strength))/2
    SET vUP = vAVG + (@ATRmult * vATR)
    SET vDN = vAVG - (@ATRmult * vATR)
    #
    SET PLOT1 = vUP
    SET PLOT2 = vDN
    SET PLOT3 = vAVG

  8. #8

    Data Registrazione
    Jan 2011
    Località
    Genova
    Messaggi
    1,306
    Citazione Originariamente Scritto da maxmax68 Visualizza Messaggio
    Poche semplici righe di EasyLanguage e EasyScript finisce al tappeto.
    non conosco easylanguage, quando si scrive

    if trend < 0 and trend[1] > 0 then flag=1 else flag=0;

    si intende che si cicla per ogni barra riferendosi al valore della barra precedente identicata con [1] ?

    Detta in un altro modo: supertrend si calcola in modo vettoriale o no?

  9. #9

    Data Registrazione
    Sep 2013
    Località
    Monza
    Messaggi
    186
    Citazione Originariamente Scritto da BMM Visualizza Messaggio
    non conosco easylanguage, quando si scrive

    if trend < 0 and trend[1] > 0 then flag=1 else flag=0;

    si intende che si cicla per ogni barra riferendosi al valore della barra precedente identicata con [1] ?

    Detta in un altro modo: supertrend si calcola in modo vettoriale o no?
    Ciao BMM,
    trend[1] = REF(trend,1).
    Il valore del Supertrend di questa barra viene calcolato tenendo conto del valore del
    Supertrend della barra precedente, e della sua posizione rispetto al close.
    Saluti
    Massimo

  10. #10

    Data Registrazione
    Jan 2011
    Località
    Genova
    Messaggi
    1,306
    Citazione Originariamente Scritto da maxmax68 Visualizza Messaggio
    Ciao BMM,
    trend[1] = REF(trend,1).
    Il valore del Supertrend di questa barra viene calcolato tenendo conto del valore del
    Supertrend della barra precedente, e della sua posizione rispetto al close.
    Saluti
    Massimo
    immaginavo, bravi, buon caso di studio per far implementare nuove funzioni. Credo che con il barloop attuale non se ne possa uscire, sono curioso di vedere se riuscite a scriverlo senza IF-THEN-ELSE

    Io ho due codici del supertrend ma nessuno dei due è scritto in maniera elegante tale da essere istruttivo o di aiuto per uscire dalla difficoltà del momento

    Ottima scelta
    Ultima modifica di BMM; 03-11-13 alle 13:39

Permessi di Scrittura

  • Tu non puoi inviare nuove discussioni
  • Tu non puoi inviare risposte
  • Tu non puoi inviare allegati
  • Tu non puoi modificare i tuoi messaggi
  •  
Contattaci

Chiama gli esperti
+39 0425 792923

Chiamaci
Email

Richiedi informazioni via E-MAIL
info@playoptions.it

Scrivici
Nostri Uffici

Vieni a trovarci
45100 Rovigo

Contattaci

Serve Aiuto?

Contattaci per maggiori informazioni.

Denis MorettoSpecialista Finanziario
Contattaci
Questo sito utilizza cookie tecnici e di profilazione. Cliccando su accetta si autorizzano tutti i cookie di profilazione. Cliccando su rifiuta o la X si rifiutano tutti i cookie di profilazione. Cliccando su personalizza è possibile selezionare quali cookie di profilazione attivare.