DDE IWBank per scarico dati in Excel

Collapse
X
 
  • Ora
  • Show
Clear All
new posts
  • the learner
    Senior Member

    • Dec 2011
    • 571

    #1

    DDE IWBank per scarico dati in Excel

    Ciao,

    io ho un conto IWBank ed ho collegato Excel in DDE per avere i dati in tempo reale delle chain di ottobre e novembre per Eurostoxx. Il problema è che non tutti gli strike si aggiornano, sebbene sui relativi book i campi che io cerco siano popolati).

    Evidentemente sbaglio io qualcosa, nel qual caso chiedo a chi dovesse già riuscire a scaricare tutte le chain con successo se può condividere il file per effettuare un confronto.

    Io sto tentando di scaricare i prezzi e i volumi (bid e ask) per una ventina di strike su ognuna delle due scadenze che mi interessano.
    IWBank in chat mi ha confermato che non ci sono limiti al numero di dati scaricati per cui non capisco dove sia il problema.

    Ciao e grazie.
  • TomEFord
    Senior Member

    • Dec 2011
    • 280

    #2
    Il DDE è preistoria!!!

    Comunque IW ha un limite di 50 "simboli" in DDE non ne puoi ricevere di più.

    Comment

    • the learner
      Senior Member

      • Dec 2011
      • 571

      #3
      Originariamente Scritto da TomEFord
      Il DDE è preistoria!!!

      Comunque IW ha un limite di 50 "simboli" in DDE non ne puoi ricevere di più.
      Ciao,

      sono felice tu dica così perchè vuol dire che sei più avanti di me sul tema e potrai darmi qualche suggerimento.
      La mia esigenza è molto semplice: voglio plottare la superficie di volatilità in tempo reale. Se non proprio l\'intera superficie, almeno lo smile/skew delle prime tre scadenze e la struttura a termine delle vola ATM.

      E\' l\'unica cosa che mi manca in FIuto Pro e da quanto confermatomi da Massimiliano, dovrò aspettare l\'integrazione in BeeTrader per avere le info disponibili in Fiuto.

      Quindi mi serve scaricare una serie di prezzi bid e ask, certamente più di 50. Come posso fare?

      Mille grazie.

      Comment

      • the learner
        Senior Member

        • Dec 2011
        • 571

        #4
        Ricordo di aver sentito/letto che la PEI deve essere usata in maniera esclusiva. Pertanto con Fiuto in esecuzione non posso sfruttare la stessa tecnologia per alimentare altro.

        In attesa di suggerimenti su come poter risolvere, chiedo la vostra opinione su questa soluzione temporanea:

        uso lo script di Fiuto per salvare su txt tutte le info che voglio e poi uso il txt come input in Excel per mettere il tutto su grafico.

        OK, non sarà realtime ma è una soluzione temporanea in attesa di qualcosa di meglio.

        Il problema è che non ho ben chiaro come impostare lo script. Supponiamo di avere tre contratti nello strategy builder, vorrei far eseguire lo script ogni minuto in modo da salvare i dati su un txt:

        Codice:
        \' SCRIPT PERSONALITY: BASIC\'
        Uses  Classes
        
        
        Dim FileName1 as String                                      
        Dim FileTesto1 as TStringList                  
                                              
        Dim vol1 as double  
        Dim vol2 as double  
        Dim vol3 as double     
        
        
        Dim opt1 as TOption  
        Dim opt2 as TOption                 
        Dim opt3 as TOption     
                                                                    
        Dim Future as TUnderlying
                                                                       
        FileTesto1 = New TStringList  
        
        
        FileName1 = "C:\Users\Desktop\opt\Oct.txt"                             
                                                                                              
        opt1 = CurrentStrategy.GetByName("C @ 3200 10-2014")
        opt2 = CurrentStrategy.GetByName("C @ 3300 11-2014")   
        opt3 = CurrentStrategy.GetByName("P @ 3150 10-2014")                   
                                                                                                                 
        vol1 = opt1.Volatility                        
        vol2 = opt2.Volatility                          
        vol3 = opt3.Volatility
                                                                    
        Future = CurrentStrategy.GetByName("DJ EURO STOXX 50 2014-12-18")                    
          
        FileTesto1.LoadFromFile(FileName1)  
        FileTesto1.add(vol1 & vol2 & vol3)     
        FileTesto1.SaveToFile(FileName1)
        Primo problema: il codice sopra non riesco a farlo girare ogni minuto anche se imposto questa frequenza nelle proprietà. Quindi ho solo una riga di valori che mi viene salvata.

        Secondo problema: il codice salva sul file Opt.txt. Io vorrei cambiare il nome del file ad ogni esecuzione. Ad esempio, lancio lo script la mattina e salvo i dati in Opt_0.txt... dopo 1 minuto lo script viene eseguito di nuovo ma i nuovi dati li salva in Opt_1.txt... etc. Quindi avrò un nuovo txt ogni minuto.

        Qualcuno potrebbe darmi una mano? Grazie.

        Comment

        • civvic
          Senior Member

          • May 2012
          • 593

          #5
          Se ti può essere utile ti posso dare il mio codice (stupidissimo) per salvare i dati della vola di opzioni (caricate in una strategia di Fiuto) su un file .txt . Lo faccio con il codice script di Fiuto e dico a Fiuto di eseguire la procedura continuamente ad ogni tick.
          Poi a fine giornata o durante carico i dati in excel e mi creo un grafico ... ma non sono riuscito a cavarne nulla (magari sono io la solita schiappa ).
          Io non vendo tasti ! - Tiziano Cagalli ...quindi se c'è un tasto (su Fiuto) vuol dire che serve !!

          Comment

          • the learner
            Senior Member

            • Dec 2011
            • 571

            #6
            Sarebbe molto utile. Magari mi dici anche come impostare le proprietà visto che il mio codice sopra funziona solo se lo lancio manualmente mentre sembra non rispondere se imposto di eseguire ogni minuto.

            Grazie mille.

            Comment

            • civvic
              Senior Member

              • May 2012
              • 593

              #7
              il semplice codice:



              uses classes

              dim b as TstringList
              dim u as Tunderlying
              dim oc1, op1, oc2, op2, oc3, op3, oc4, op4 as TOption
              dim volap, volac, diffv, price

              b = new TStringList()
              oc1 = new TOption()
              op1 = new TOption()
              oc2 = new TOption()
              op2 = new TOption()
              oc3 = new TOption()
              op3 = new TOption()
              oc4 = new TOption()
              op4 = new TOption()

              u = CurrentStrategy.GetMainUnderlying()
              price = CurrentStrategy.GetMainUnderlyingprice()
              oc1 = CurrentStrategy.GetByName("C @ 20000 10-2014")
              op1 = CurrentStrategy.GetByName("P @ 20000 10-2014")
              oc2 = CurrentStrategy.GetByName("C @ 20500 10-2014")
              op2 = CurrentStrategy.GetByName("P @ 20500 10-2014")
              oc3 = CurrentStrategy.GetByName("C @ 21000 10-2014")
              op3 = CurrentStrategy.GetByName("P @ 21000 10-2014")
              oc4 = CurrentStrategy.GetByName("C @ 21500 10-2014")
              op4 = CurrentStrategy.GetByName("P @ 21500 10-2014")



              b.LoadFromFile("vola.txt")
              b.add(price & " , " & oc1.Volatility & " , " & op1.Volatility & " , " & oc2.Volatility & " , " & op2.Volatility & " , " & oc3.Volatility & " , " & op3.Volatility & " , " & oc4.Volatility & " , " & op4.Volatility)
              b.SaveToFile("vola.txt")

              b.Free



              devi solo avere l\'accortezza di caricare le opzioni che vuoi monitorare nello strategy builder e poi inserire nel codice lo stesso nome (qui ce ne sono 8 di esempio)

              poi vai in script-proprietà script e selezioni come da figura
              Click image for larger version

Name:	script.JPG
Views:	1
Size:	11.6 KB
ID:	156273

              Click image for larger version

Name:	script2.JPG
Views:	1
Size:	44.5 KB
ID:	156274

              cioè fai agire lo script ad ogni tick
              A fine giornata hai il file vola.txt con i dati separati da virgole, quindi è facile importarli in excel.

              Ok fammi sapere se ne tiri fuori qualcosa!
              Io non vendo tasti ! - Tiziano Cagalli ...quindi se c'è un tasto (su Fiuto) vuol dire che serve !!

              Comment

              • civvic
                Senior Member

                • May 2012
                • 593

                #8
                scusa dimenticavo! Creati prima il file vola.txt!
                Io non vendo tasti ! - Tiziano Cagalli ...quindi se c'è un tasto (su Fiuto) vuol dire che serve !!

                Comment

                Working...