Oggi è 22/12/2024, 13:50


Il software della volatilità storica step by step…

  • Autore
  • Messaggio
Non connesso
Avatar utente

AZ13

  • Messaggi: 42818
  • Iscritto il: 28/09/2011, 22:27

Re: Il software della volatilità storica step by step…

Messaggio24/10/2011, 9:02

MassimoTononi ha scritto:MI presento sono Massimo,
ci ho lavorato un paio di ore questa notte per poter realizzare la prima parte
una sudata :22 quante volte ho dovuto rifare :30
pero il primo step è completo :OK


Bene! Massimo intanto benvenuto nel nostro club… :BB

Ti sei tuffato a capofitto sul progetto a quanto pare… alla fine vedrai che lo sforzo verrà ripagato. :25

Ti troverai per le mani una piccola piattaforma su cui poter fare tutti i grafici e i tuoi studi specifici.
Meno si rischia più si guadagna ...
Non connesso
Avatar utente

AZ13

  • Messaggi: 42818
  • Iscritto il: 28/09/2011, 22:27

Re: Il software della volatilità storica step by step…

Messaggio24/10/2011, 9:48

C’è rimasto ora da vedere di realizzare la subroutine più importante del programma quella che - di fatto - va sul sito di yhoo! è preleva i dati dal suo data base. La subroutine AZ

Prima però dobbiamo fare ancora due cosucce. :roll:
Meno si rischia più si guadagna ...
Non connesso
Avatar utente

AZ13

  • Messaggi: 42818
  • Iscritto il: 28/09/2011, 22:27

Re: Il software della volatilità storica step by step…

Messaggio24/10/2011, 9:51

La prima consiste nell’assegnare al nostro intervallo di titoli, quelli presenti nel foglio “Tabella” un nome univoco che ci consente di richiamare questo intervallo quando ci serve.

Per cui ritorniamo sul foglio Excel premendo contemporaneamente i tasti Alt+Q oppure seguendo il percorso File > Chiudi e torna a Microsoft Excel.
Non hai i permessi necessari per visualizzare i file allegati in questo messaggio.
Meno si rischia più si guadagna ...
Non connesso
Avatar utente

AZ13

  • Messaggi: 42818
  • Iscritto il: 28/09/2011, 22:27

Re: Il software della volatilità storica step by step…

Messaggio24/10/2011, 9:58

Andiamo sul foglio “Tabella” (se è nascosto lo scopriamo con formato > Foglio > scopri).

Selezioniamo dunque il nostro intervallo premendo con il tasto sinistro del mouse dalla cella A2 fino alla cella B42.

A questo punto con Inserisci > nome > Definisci, possiamo assegnare il nome alla nostra selezione.

Anche questo intervallo lo abbiamo chiamato “Tabella”. E' chiaro che oltre al foglio “Tabella” avremo anche un’intervallo dal nome “Tabella”.
Non hai i permessi necessari per visualizzare i file allegati in questo messaggio.
Meno si rischia più si guadagna ...
Non connesso
Avatar utente

AZ13

  • Messaggi: 42818
  • Iscritto il: 28/09/2011, 22:27

Re: Il software della volatilità storica step by step…

Messaggio24/10/2011, 10:10

La seconda cosuccia che dobbiamo fare è quella di andare sul foglio “Aggiorna” è in corrispondenza della cella A4 inserire una funzione di Excel: CERCA.VERT.
E che cosa dobbiamo ricercare? Ma… il codice del titolo che abbiamo scelto naturalmente.

Provate il programma…
Non hai i permessi necessari per visualizzare i file allegati in questo messaggio.
Meno si rischia più si guadagna ...
Non connesso
Avatar utente

AZ13

  • Messaggi: 42818
  • Iscritto il: 28/09/2011, 22:27

Re: Il software della volatilità storica step by step…

Messaggio24/10/2011, 11:29

Queste ultime due operazioni – naturalmente – potevano essere realizzate direttamente da codice inserendo semplicemente due istruzioni a livello dell’evento clik del pulsante “Aggiorna” presente sulla Form. :20
Non hai i permessi necessari per visualizzare i file allegati in questo messaggio.
Meno si rischia più si guadagna ...
Non connesso
Avatar utente

AZ13

  • Messaggi: 42818
  • Iscritto il: 28/09/2011, 22:27

Re: Il software della volatilità storica step by step…

Messaggio24/10/2011, 11:46

E veniamo al fulcro del programma cioè alla subroutine AZ.
Eccola! Per agevolarvi l’ho messa direttamente nel post in maniera tale che possiate fare un copia e incolla evitando errori di digitatura.

    Sub AZ()
    Dim QuerySheet, DataSheet As Worksheet
    Dim EndDate, StartDate As Date
    Dim Symbol, qurl As String
    Dim nQuery As Name

    On Error GoTo Problema

    Application.ScreenUpdating = False

    Set DataSheet = Sheets("Aggiorna")
    StartDate = DataSheet.Range("B2").Value
    EndDate = DataSheet.Range("B3").Value
    Symbol = DataSheet.Range("B4").Value

    Range("C7").CurrentRegion.ClearContents

    'l'indirizzo dell'URL per ottenere la query

    qurl = "http://chart.yahoo.com/table.csv?s=" & Symbol
    qurl = qurl & "&a=" & Month(StartDate) - 1 & "&b=" & Day(StartDate) & _
    "&c=" & Year(StartDate) & "&d=" & Month(EndDate) - 1 & "&e=" & _
    Day(EndDate) & "&f=" & Year(EndDate) & "&g=" & Range("E3") & "&q=q&y=0&z=" & _
    Symbol & "&x=.csv"

    QueryQuote:
    With ActiveSheet.QueryTables.Add(Connection:="URL;" & qurl, Destination:=DataSheet.Range("A7"))
    .BackgroundQuery = True
    .TablesOnlyFromHTML = False
    .Refresh BackgroundQuery:=False
    .SaveData = True
    End With

    Range("A7").CurrentRegion.TextToColumns Destination:=Range("A7"), DataType:=xlDelimited, _
    TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, _
    Semicolon:=False, Comma:=True, Space:=False, other:=False

    Range(Range("A7"), Range("A7").End(xlDown)).NumberFormat = "dd/mm/yy"
    Range(Range("B7"), Range("B7").End(xlDown)).NumberFormat = "0.00"
    Range(Range("C7"), Range("C7").End(xlDown)).NumberFormat = "0.00"
    Range(Range("D7"), Range("D7").End(xlDown)).NumberFormat = "0.00"
    Range(Range("F7"), Range("F7").End(xlDown)).NumberFormat = "#,##0"



    Range("A7").CurrentRegion.Select
    Selection.Sort Key1:=Range("A8"), Order1:=xlAscending, Header:=xlGuess, _
    OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
    Columns("A:G").EntireColumn.AutoFit
    Columns("A:G").HorizontalAlignment = xlCenter

    'Elimina colonna con Chiusura aggiustata

    Columns("G:G").Delete Shift:=xlToLeft
    Range("A1").Select
    Application.ScreenUpdating = True
    Exit Sub

    Problema:
    Motivo_del_problema:

    MsgBox "Internet non è attivo." _
    & vbLf & vbLf & "oppure:" _
    & vbLf & vbLf & "Le quotazioni storiche del titolo non sono al momento disponibili." _
    & vbLf & "Invitiamo a riprovare più tardi." _
    & vbLf & vbLf & "", vbCritical + vbOKOnly, " Attenzione !!! "
    End Sub
Meno si rischia più si guadagna ...
Non connesso
Avatar utente

AZ13

  • Messaggi: 42818
  • Iscritto il: 28/09/2011, 22:27

Re: Il software della volatilità storica step by step…

Messaggio24/10/2011, 12:00

Prima di analizzarla vediamo dove deve essere inserita.

Con Alt+F11 ci spostiamo di nuovo nella’ambiente di sviluppo del VBA.

Poi creiamo un modulo seguendo il percorso Inserisci > Modulo.

Dovrebbe apparire nel diagramma ad albero sulla sinistra, sotto la Form un modulo dal nome Modulo1 che rinomineremo in "Generale".

P.S. I moduli sono contenitori di subroutine.
Non hai i permessi necessari per visualizzare i file allegati in questo messaggio.
Meno si rischia più si guadagna ...
Non connesso
Avatar utente

AZ13

  • Messaggi: 42818
  • Iscritto il: 28/09/2011, 22:27

Re: Il software della volatilità storica step by step…

Messaggio24/10/2011, 12:11

Analizziamo la subroutine AZ. :23
Non hai i permessi necessari per visualizzare i file allegati in questo messaggio.
Meno si rischia più si guadagna ...
Non connesso
Avatar utente

AZ13

  • Messaggi: 42818
  • Iscritto il: 28/09/2011, 22:27

Re: Il software della volatilità storica step by step…

Messaggio24/10/2011, 12:33

Per far funzionare il programma ottenuto fino a questo momento dobbiamo fare ancora qualche rifinitura.

I dati presenti sul sito di Yahoo! hanno la formattazione di tipo americana che utilizza il punto per separare i decimali e la virgola per separare le migliaia.

Quindi poter caricare i dati e operare successivamente su questi dovremmo prima cambiare l’impostazione del nostro computer.

Questo si può fare sia manualmente andando a modificare i parametri nel modulo "Internazionale" alla voce "Gestione numero" raggiungibile dal menù Strumenti > Opzioni, oppure direttamente da codice.
Non hai i permessi necessari per visualizzare i file allegati in questo messaggio.
Meno si rischia più si guadagna ...
PrecedenteProssimo

Torna a Excel fai da te



Chi c’è in linea

Visitano il forum: Nessuno e 1 ospite