Risultati da 1 a 10 di 69

Visualizzazione Ibrida

  1. #1
    L'avatar di Marco Bosco
    Data Registrazione
    Sep 2012
    Località
    Pistoia
    Messaggi
    419
    Citazione Originariamente Scritto da alex69 Visualizza Messaggio
    Caspita!!!
    Grazie fnet e Marco.
    Mi sa che mi sono perso un bel po' di cose strada facendo, nonostante segua il forum costantemente.
    Ci sono strumenti di cui ignoravo l'esistenza e che sono stati creati apposta per semplificarci la vita.

    Marco, in riferimento al punto 4), puoi aiutarmi a capire meglio come devo intervenire?
    Grazie.

    Mi sembra che questo thread sia di grande utilità.
    E' l'occasione per fare un bel ripasso generale e per sfruttare al meglio le potenzialità di BT.
    Grazie Playoptions!!!

    ciao,
    guarda è molto semplice partiamo dal codice :

    INPUTS: @price(CLOSE), @periods(80), @lev1(-65), @lev2(-35)
      
     
    SET v = Variance(@price, @periods, SIMPLE)
    SET o = Oscillator(v, @periods)
    SET VariaPeriodi = @periods + o - 50.0
     
     
    # EasyScript internamente esegue gia' l'arrotondamento all'intero piu' vicino nel calcolo dei periodi
    # quindi questa riga non e' necessaria.
    # SET VariaPeriodi = ROUND((@period1 * allungaAccorcia),0)
     
    # Assicura di avere un valore valido per il calcolo di %R
    SET PeriodoWilliams = IF(VariaPeriodi < 2, 2, VariaPeriodi)
     
    SET A = WilliamsPctR(PeriodoWilliams)
    SET B = @lev1
    SET C = @lev2
     
    print (v, o, PeriodoWilliams) 
    
    
    
    
    CROSSOVER(A, @lev1)
    come vedi nell'istruzione:

    SET VariaPeriodi = @periods + o - 50.0
    c'è quel 50 che è una costante.
    Magari non è adatta per il sottostante/TF/condizioni mercato....

    Qui il coefficiente è sommatto/sottratto ma puoi anche moltiplicare dividere...inventare insomma premesso che le varianti sono ben piu che infinite... come prima cosa potresti PARAMETRIZZARLO:

    INPUTS: @price(CLOSE), @periods(80), @lev1(-65), @lev2(-35), @variatore(50)
      
     
    SET v = Variance(@price, @periods, SIMPLE)
    SET o = Oscillator(v, @periods)
    SET VariaPeriodi = @periods + o - @variatore
     
     
    # EasyScript internamente esegue gia' l'arrotondamento all'intero piu' vicino nel calcolo dei periodi
    # quindi questa riga non e' necessaria.
    # SET VariaPeriodi = ROUND((@period1 * allungaAccorcia),0)
     
    # Assicura di avere un valore valido per il calcolo di %R
    SET PeriodoWilliams = IF(VariaPeriodi < 2, 2, VariaPeriodi)
     
    SET A = WilliamsPctR(PeriodoWilliams)
    SET B = @lev1
    SET C = @lev2
     
    print (v, o, PeriodoWilliams) 
    
    
    
    
    CROSSOVER(A, @lev1)
    adesso puoi quindi ottimizzarlo....

    Clicca sull'immagine per ingrandirla

Nome: A.png
Visite: 17
Dimensione: 20.6 KB
ID: 17103


    Questo è solo un esempio come ti dicevo...infatti essendo a sommare/sottrarre ed essendo lineare ottieni gli stessi risultati , della tua ottimizzazione originale... ma "shiftati" ....

    Magari avvia a dividere / molitiplicare anche la varianza con un coeff. intorno all'unità...

    esempio:

    INPUTS: @price(CLOSE), @periods(80), @lev1(-65), @lev2(-35), @variatore(50)
      
     
    SET v = (Variance(@price, @periods, SIMPLE)) * 1,1
    SET o = Oscillator(v, @periods)
    SET VariaPeriodi = @periods + o - @variatore
     
     
    # EasyScript internamente esegue gia' l'arrotondamento all'intero piu' vicino nel calcolo dei periodi
    # quindi questa riga non e' necessaria.
    # SET VariaPeriodi = ROUND((@period1 * allungaAccorcia),0)
     
    # Assicura di avere un valore valido per il calcolo di %R
    SET PeriodoWilliams = IF(VariaPeriodi < 2, 2, VariaPeriodi)
     
    SET A = WilliamsPctR(PeriodoWilliams)
    SET B = @lev1
    SET C = @lev2
     
    print (v, o, PeriodoWilliams) 
    
    
    
    
    CROSSOVER(A, @lev1)
    poi magari al posto di 1,1 lo parametrizzi e lo fai muovere di qualche decimo o centesimo e guardi come risponde.


    Mentre con questi esempi sei andato a "sfasare" l'argomente della funzione WilliamsPctR, potresti adesso invece intervenire andando proprio ad amplificare la grandezza A, che poi è quella che deve incrociarsi con i livelli B o C.

    quindi anche qua ... coefficiente:

    INPUTS: @price(CLOSE), @periods(80), @lev1(-65), @lev2(-35), @variatore(50)
      
     
    SET v = (Variance(@price, @periods, SIMPLE)) * (1.1)
    SET o = Oscillator(v, @periods)
    SET VariaPeriodi = @periods + o - @variatore
     
    
    
    set PLOT1 = v
     
    # EasyScript internamente esegue gia' l'arrotondamento all'intero piu' vicino nel calcolo dei periodi
    # quindi questa riga non e' necessaria.
    # SET VariaPeriodi = ROUND((@period1 * allungaAccorcia),0)
     
    # Assicura di avere un valore valido per il calcolo di %R
    SET PeriodoWilliams = IF(VariaPeriodi < 2, 2, VariaPeriodi)
     
    SET A = (WilliamsPctR(PeriodoWilliams)) * 1,1
    SET B = @lev1
    SET C = @lev2
     
    print (v, o, PeriodoWilliams) 
    
    
    
    
    CROSSOVER(A, @lev1)

    come vedi adesso A si amplifica

    SET A = (WilliamsPctR(PeriodoWilliams)) * 1,1

    Infine a titolo di debug prendi lo stesso codice e crei il segnale.
    Ed usando le funzioni plot vai a disegnare queste grandezze.

    esempio:

    set PLOT1 = v
    ....quando poi sei pratico guardi direttamente i numeri nella finestra di debug dell'ambiente di sviluppo.

    procedete a piccole modifiche alla volta.

    saluti
    Ultima modifica di Marco Bosco; 07-12-14 alle 11:27
    I computer sono incredibilmente veloci, accurati e stupidi. Gli uomini sono incredibilmente lenti, inaccurati e intelligenti. L’insieme dei due costituisce una forza incalcolabile. (Albert Einstein)

  2. #2
    L'avatar di familytaz
    Data Registrazione
    Oct 2008
    Località
    Marche
    Messaggi
    1,779
    Potrebbe essere utile nei risultati di backtest, aver una funzione come quella presente su OS, cioè "Show Invalid data" per avere una serie storica attendibile ?

    Anteprime Allegate Anteprime Allegate Clicca sull'immagine per ingrandirla

Nome: 0.png‎
Visite: 2
Dimensione: 13.1 KB
ID: 17106   Clicca sull'immagine per ingrandirla

Nome: 00.png‎
Visite: 8
Dimensione: 17.9 KB
ID: 17107  

  3. #3
    L'avatar di Marco Bosco
    Data Registrazione
    Sep 2012
    Località
    Pistoia
    Messaggi
    419
    Citazione Originariamente Scritto da familytaz Visualizza Messaggio
    Potrebbe essere utile nei risultati di backtest, aver una funzione come quella presente su OS, cioè "Show Invalid data" per avere una serie storica attendibile ?

    ciao familytaz,
    andrebbe prima definito cosa è attendibile?
    In OS ci sono delle regole per stabilire se le due serie hanno le barre che matchano tra loro.

    E qua?Cosa è attendibile e cosa no?....fare si può fare tutto , ma deve essere RIPETIBILE, AUTOMATIZZABILE, BEN DEFINITO.

    Spiega meglio cosa stai pensando..
    I computer sono incredibilmente veloci, accurati e stupidi. Gli uomini sono incredibilmente lenti, inaccurati e intelligenti. L’insieme dei due costituisce una forza incalcolabile. (Albert Einstein)

  4. #4
    L'avatar di familytaz
    Data Registrazione
    Oct 2008
    Località
    Marche
    Messaggi
    1,779
    Citazione Originariamente Scritto da Marco Bosco Visualizza Messaggio
    ciao familytaz,
    andrebbe prima definito cosa è attendibile?
    In OS ci sono delle regole per stabilire se le due serie hanno le barre che matchano tra loro.

    E qua?Cosa è attendibile e cosa no?....fare si può fare tutto , ma deve essere RIPETIBILE, AUTOMATIZZABILE, BEN DEFINITO.

    Spiega meglio cosa stai pensando..
    "Come nell'OS ci sono delle regole per stabilire se le due serie hanno le barre che matchano tra loro",
    è possibile creare delle regole sui backtest se la serie ha dati non attendibili ? Che ne so, magari se ci sono tot barre "strane" ricollegarsi con il broker e riscaricare la serie storica ripetendo il backtest.
    Anteprime Allegate Anteprime Allegate Clicca sull'immagine per ingrandirla

Nome: 0.png‎
Visite: 6
Dimensione: 19.6 KB
ID: 17110  
    Ultima modifica di familytaz; 07-12-14 alle 17:27

  5. #5

    Data Registrazione
    Dec 2012
    Messaggi
    432
    Citazione Originariamente Scritto da Marco Bosco Visualizza Messaggio

    ....quando poi sei pratico guardi direttamente i numeri nella finestra di debug dell'ambiente di sviluppo.

    procedete a piccole modifiche alla volta.

    saluti
    Marco non so come ringraziarti, sei proprio gentilissimo!!!
    Ora con calma devo digerire i vari passaggi che hai illustrato.

    Una domanda:
    I coefficienti dell'esempio (*1.1) , posso inserirli come parametri ed eventualmente ottimizzarli o è meglio procedere per singoli step e ottimizzare di volta in volta solo gli altri parametri?
    Grazie.

  6. #6
    L'avatar di Marco Bosco
    Data Registrazione
    Sep 2012
    Località
    Pistoia
    Messaggi
    419
    Citazione Originariamente Scritto da alex69 Visualizza Messaggio
    Marco non so come ringraziarti, sei proprio gentilissimo!!!
    Ora con calma devo digerire i vari passaggi che hai illustrato.

    Una domanda:
    I coefficienti dell'esempio (*1.1) , posso inserirli come parametri ed eventualmente ottimizzarli o è meglio procedere per singoli step e ottimizzare di volta in volta solo gli altri parametri?
    Grazie.
    ciao alex69,
    mettili pure come variabili per renderti conto di cosa succede e ottimizzali.

    Devo però dirti una cosa ... Purtroppo il fenomeno è fortemente non lineare (e tutte le variabili sono "legate tra loro"....in parole molto povere se ne tocchi una ...modifiche il comportamento di tutte) quindi NON è che puoi ottimizzare una variabile , scegli il valore che ti da il profit maggiore poi passi alla seconda variabile, poi fai lo stesso e passi ad ottimizzare la terza e cosi via....

    Esempio ... trovi l'ottimo (per ottimo , in ricerca operativa, si intende la ricerca dei massimi e minimi di qualcosa ... nel nostro caso per esempio e solo per esempio la ricerca del Max total net profit e minimo del drawdown) della prima variabile e la fissi...poi vai ad ottimizzare la seconda. Non è detto che sia l'ottimo GLOBALE... perchè magari scegliendo un valore meno buono della prima...avresti trovato risultati di gran lunga migliori poi andando ad ottimizzare la seconda.


    NOTA


    in beeTrader verrà sviluppato un tool avanzato di analisi multidimensionale che permetterà proprio di verificare in modo semplice ed ancora più intuitivo, anche graficamente, come si comporteranno le varie grandezze al variare di altre due variabili (scelte a piacere). Andando quindi a costruire delle SUPERFICI di risposta.
    I computer sono incredibilmente veloci, accurati e stupidi. Gli uomini sono incredibilmente lenti, inaccurati e intelligenti. L’insieme dei due costituisce una forza incalcolabile. (Albert Einstein)

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.