Announcement

Collapse
No announcement yet.

Aggiornamento chart

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    Aggiornamento chart

    Buongiorno traders, chiedo aiuto per un problema di aggiornamento delle charts di una window. In una pagina in cui c'è una lista di bottoni che permettono di scegliere gli indici o le coppie di valute e cambiano quattro charts della valuta scelta con differenti timeframes, succede che le charts cambiano regolarmente la coppia e i timeframes, ma non si aggiornano completamente secondo gli indicatori presenti e contenuti in una formattazione esistente, ad esempio 'miaformat'. A nulla servono i comandi Chartredraw, chiamati per ciascun ID della chart, o Windowrefresh etc... L'unica soluzione è cambiare manualmente il timeframe di ogni chart oppure richiamare il preset della formattazione per ogni chart (miaformat). Questo è quello che preferirei. E qui la mia domanda. E' possibile chiamare da programma un cambio di formattazione esistente o, in alternativa, un richiamo della lista degli indicatori per ogni chart presente?
    Grazie in anticipo

    #2
    Ho trovato la causa del mancato aggiornamento dei grafici. Per cambiare la coppia in un grafico si usa la funzione ChartSetSymbolPeriod che però è una chiamata asincrona, cioè torna quando vuole e perciò può 'saltare' l'aggiornamento di Chartredraw in qualche grafico della window. E' un problema che non ha soluzione. Almeno per me...

    Comment


      #3
      Ciao

      Se ti può aiutare, io con questa routine richiamo le varie coppie di valute. Si apre una nuovo grafico, con il time frame specificato, e tutti i suoi indicatori.

      8.41.jpg

      Comment


        #4
        Ciao PISoft, in effetti la tua soluzione è più elegante e 'ChartApplyTemplate' risponde perfettamente alla mia domanda iniziale. E' una funzione che non conoscevo. Ti ringrazio. Ho però risolto in altro modo. Come sempre, quando qualcosa non ti riesce ti inventi un workaround che è una patch orrenda ma che alla fine funziona. I nostri antenati dicevano 'repetita iuvant'. Ho fatto tesoro di questa filosofia e ho chiamato una funzione aggiuntiva che selettivamente ripete la chiamata a ChartSetSimbolPeriod() forzando l'aggiornamento. La cosa funziona e non cambierei il codice, pur riconoscendo che lo stile lascia a desiderare. Grazie comunque. Un saluto

        Comment

        Working...
        X