Discussione: Fiuto vers. 0.8.6.26
-
22-07-10, 19:40 #11
Re: Fiuto vers. 0.8.6.26
Non ho ben capito qual'è il problema.
Se si parla del grafico storico del sottostante, l'ultima barra è sempre relativa al giorno odierno. Tutte le altre barre invece vengono scaricate dai siti internet che forniscono i dati storici gratuitamente.
Se manca una barra "storica" che non sia quella di oggi, probabilmente è un problema relativo al sito da cui vengono presi i dati.
Max Francario
-
23-07-10, 00:44 #12
- Data Registrazione
- Mar 2010
- Località
- Viterbo
- Messaggi
- 698
Re: Fiuto vers. 0.8.6.26
Originariamente Scritto da Felix
Non posso entrare nel merito di Codice che non ho mai visto ma mi sembra evidente, perche è il piu classico dei problemi, che sia insito nell'evento "OnMouseOver" o "OnMouseMove" dei due componenti "Pannello" sul quale si muove la linea orizzontale mossa dal mouse.
Quando uno di questi eventi viene eseguito (l'utente muove il mouse su uno dei due pannelli) vengono valorizzate due variabili X,Y che sono le coordinate del puntatore sulla tela del componente. Queste variabili sono di tipi numerico Intero perche riportano il numero indicante i singoli pixel che vanno da 0 alla larghezza/altezza dello schermo.
La coordinata Y (asse verticale), in particolare, viene utilizzata a mezzo di apposito algoritmo che non conosco (probabilmente una semplice proporzione tra il valore Y e la scala del sottostante) per individuare il valore (in virgola mobile, quindi numerico float) delle linee di Pay-off.
Questo valore viene poi trasformato (type-casting) in una variabile di tipo stringa per essere visualizzato su quelle 5 "etichette" che riportano i valori.
Questa mia ricostruzione potrebbe non essere precisamente quella utilizzata per Fiuto ma i concetti non possono differire molto.
Riassumendo quindi, credo che succeda questo:
Un valore intero (pixel X e Y) entra a far parte di una operazione di divisione che restituisce sempre un numero float.
Il numero float viene "calato" (type-casting) in una variabile stringa che lo possa rappresentare sullo schermo.
In queste operazioni sta l'inghippo.
Sia chiaro che ho voluto descrivere questo procedimento per chi fosse curioso, NON certo a beneficio di Max che il problema sicuramente lo conosce meglio di me visto che il codice lo scrive lui.
Quello che posso consigliare è di insistere con un debug passo-passo cercando di individuare quando il Float viene immesso in una Int, ma sicuramente accade in una operazione di divisione.
Max, scusa se mi sono permesso. Immagino che Debug step-by-step ne avrai fatti a centinaia e non te lo devo certo suggerire io.
Quanto ho scritto è solo per dimostrare che c'è chi si rende conto di quanto lavoro comporta un simile progetto e che razza di rogne devi risolvere.
Tutta la mia comprensione :side:
saluti
-
23-07-10, 01:24 #13
- Data Registrazione
- Mar 2010
- Località
- Viterbo
- Messaggi
- 698
Re: Fiuto vers. 0.8.6.26
Sono riuscito a ricreare l'errore ed è accaduto quando sono entrato col mouse sul pannello di destra. In effetti mi pare che succeda sempre così.
Dopo ciò, sia che mi muova sul pannello di sinistra che su quello di destra, la linea di destra si muove comunque seguendo la posizione del mouse e anche i valori vengono correttamente aggiornati.
(Nel precedente post non ero riuscito a riceare le condizioni per avere l'errore.)
La linea di sinistra invece rimane bloccata.
Potrebbe essere che nel disegnare la linea di sinistra vengano usati numeri float da utilizzare come coordinate Pixel?
In quel caso un bel Round(Y) :whistle:
...
-
23-07-10, 09:10 #14
- Data Registrazione
- Mar 2010
- Messaggi
- 178
Re: Fiuto vers. 0.8.6.26
Ciao Lorenzo,
volevo ringraziarti per una esposizione così chiara del problema (penso che pur non essendo programmatore a questo punto pure io riuscirei a sistemare questo errore) agree
Io avevo capito che aveva a che fare con il tipo di variable definito (mi tirano matto pure a me quando faccio qualche macro in Excel VBA) ma mai sarei arrivato a trovare la causa solo guardando il software e senza conoscere il codice che ci sta dietro.
Non hai idea di quanto mi infastidisca questo errore(a volte devo cliccare sulla finestra di errore per una trentina di volte prima che mi ridia il controllo su Fiuto) e spero ora lo risolvano al più presto! angelo
-
23-07-10, 09:17 #15
- Data Registrazione
- Mar 2010
- Località
- Viterbo
- Messaggi
- 698
Re: Fiuto vers. 0.8.6.26
beh il mio è solo un suggerimento ma magari il problema è da un'altra parte.
Comunque è vero che è fastidioso e spero che Max riesca ad eliminarlo
-
23-07-10, 13:23 #16
- Data Registrazione
- Sep 2009
- Messaggi
- 225
Re: Fiuto vers. 0.8.6.26
Non ho ben capito qual'è il problema.
Se si parla del grafico storico del sottostante, l'ultima barra è sempre relativa al giorno odierno. Tutte le altre barre invece vengono scaricate dai siti internet che forniscono i dati storici gratuitamente.
Se manca una barra "storica" che non sia quella di oggi, probabilmente è un problema relativo al sito da cui vengono presi i dati.
Max Francario
Si nell Grafico storico del sottostante FTSE MIB la barra relativa al giorno odierno non si vede,mentre nella versione 22 di fiuto va bene
-
23-07-10, 16:44 #17
- Data Registrazione
- Nov 2008
- Messaggi
- 99
Re: Fiuto vers. 0.8.6.26
Anch'io da qualche tempo rilevo lo stesso errore segnalato da "fanixs".
Sul grafico FTSE MIB la barra relativa ad oggi non appare e, con l'indice a questo momento pari a 20.594, alla data 23/7 viene riportato solo il dato di chiusura di ieri (20.694).
-
24-07-10, 09:17 #18
Re: Fiuto vers. 0.8.6.26
Originariamente Scritto da dicecc
In questo modo dovreste vedere nuovamente l'ultima barra sul grafico.
Max Francario
-
24-07-10, 09:22 #19
Re: Fiuto vers. 0.8.6.26
Originariamente Scritto da Lorenzo A
L'errore non avviene direttamente nel codice di Fiuto, ma nel codice del componente grafico, quindi in una sezione di software non scritto da me. Inoltre, l'errore viene intercettato non nel momento in cui si verifica, ma nel momento in cui arriva il primo messaggio WM_PAINT successivo, quindi non è deterministico ed è tutt'altro che facile da scovare. Non vi nascondo che l'ultima settimana è stata spesa praticamente solo per cercare di eliminare questo errore.
Max Francario
-
25-07-10, 01:02 #20
- Data Registrazione
- Mar 2010
- Località
- Viterbo
- Messaggi
- 698
Re: Fiuto vers. 0.8.6.26
Immaginavo che gia le avessi provate tutte e ho anche visto che usi le TA-Lib di Mario Fortier per i componenti e gli indicatori. Vengono solo rilasciate per l'ambiente C, quindi non le ho potute provare però mi sembra di ricordare che sono fornite con codice sorgente, o forse mi sbaglio.
Comunque il mio apporto a questo problema è l'evenienza che, finora, mi è capitato sempre quando il mouse si trovava sul pannello dei pay-off