• Non ci sono risultati.

TP t = Close t + High 3 t + Low t

CAPITOLO 2: RETI NEURALI ARTIFICIAL

2.2 Reti Neurali e Analisi Tecnica

2.2.2 Costruzione dell’archivio dat

La costruzione del set di informazioni che verranno utilizzate per riconoscere

l’eventuale evoluzione della variabile di output è senza dubbio una delle componenti fondamentali del processo di costruzione della rete neurale ed è a sua volta

scindibile in tre fasi: A. La raccolta;

B. L’analisi e la trasformazione;

C. La selezione delle variabili di input e output.

Durante la prima fase di raccolta delle informazione è necessario basarsi su alcuni principi fondamentali: in primo luogo esse devono essere recuperate da mercati con regolare frequenza di rilevazione, in grado cioè di di garantire la continuità della serie storica, almeno con la frequenza scelta per la previsione. Non è inoltre possibile fare apprendere una rete utilizzando informazioni la cui rilevazione è relativa a periodi fortemente caratterizzati da trasformazioni strutturali di mercato.

È fondamentale inoltre prevedere l’alimentazione periodica dell’archivio dei dati, per aggiornare i parametri della serie: è quindi preferibile individuare degli strumenti di

approvvigionamento dei dati capaci di fornire le informazioni in modo semplice e possibilmente automatico.

La successiva fase di preparazione dei dati raccolti, sia input che output, risulta essere particolarmente delicata in quanto alle problematiche tradizionali dell’analisi statistica si aggiunge la necessità di lasciare nelle serie storiche tutti gli elementi necessari per l’apprendimento non lineare della rete ed eliminare quelli

potenzialmente capaci di influenzare negativamente i risultati.

Per prima cosa è necessario affrontare il problema della selezione dei dati: questo aspetto è intuitivamente decisivo in quanto l’apprendimento di qualsiasi sistema dipende dalle informazioni a sua disposizione. Nel caso della previsione,

ammettendo la capacità della rete di riconoscere un pattern, vi è la necessità che la rete stessa venga fornita delle stesse condizioni conoscitive di un analista di

mercato; rilevanti sono dunque tanto i modelli teorici quanto le informazioni che possono condizionare le aspettative economiche dei mercati.

La procedura che l’analista dovrebbe seguire può essere riassunta nelle seguenti fasi:

1. Definizione del primo database molto ampio;

2. Prima applicazione del meccanismo di apprendimento della rete; 3. valutazione del contenuto informativo delle singole variabili; 4. Analisi della matrice di correlazione fra le variabili in input;

5. Progressiva eliminazione delle variabili risultate meno indicative e contestualmente più autocorrelate fra loro;

6. Nuova applicazione dell’algoritmo di apprendimento sul nuovo database ridotto. L’osservazione dei coefficienti di correlazione e dei relativi grafici consente

all’analista di individuare la natura dell’eventuale interrelazione all’interno dell’insieme delle variabili in input, nonché fra queste e la variabile in output.

La rete neurale per la previsione di serie storiche finanziarie può essere impostata utilizzando differenti tipologie di informazione:

• Market Data, direttamente legate alla variabile di output e reperibili direttamente dal mercato;

• Intermarket Data, che risultano solo operativamente legate alla variabile di output; • Fundamental Data, dependenti, appunto, dalle caratteristiche fondamentali del

titolo.

Se è vero che le tre componenti descritte si inseriscono nel modello generale, è anche opportuno considerare che non sempre il contributo delle variabili intermarket e di quelle fondamentali risultano significative per la spiegazione del fenomeno: ciò può dipendere, ad esempio, dalla frequenza delle osservazioni, dall’esistenza di ostacoli al movimento libero dei capitali (frizioni) o, ancora, da fattori di

autocorrelazione che impediscono di aggiungere conoscenza alla rete neurale. Prendendo in considerazione i Market Data, è opportuno precisare che questi

possono a loro volta essere elaborati a monte per mezzo dell’analisi tecnica, la quale consente di approfondire alcune dinamiche e segnali di inversione della tendenza e del ciclo di mercato. In particolare, per la rete neurale risulta rilevante disporre di queste ulteriori informazioni poiché l’obiettivo è quello di riconoscere dei modelli di comportamento che la sola serie storica non necessariamente porta alla luce: l’analisi tecnica algoritmica (o euristico-quantitativa), avendo nel corso degli anni

raffinato dei validi “filtri” che accentuano in varie forme le componenti strutturali delle serie finanziarie, ben si presta a questo scopo .28

Come noto dalla trattazione del primo capitolo di questo elaborato, l’analisi tecnica che si basa sull’utilizzo di indicatori, così come tutti gli approcci squisitamente quantitativi all’indagine operativa finanziaria, si fonda sull’assunzione che i prezzi espressi dal mercato sino ad un certo instante siano indicativi delle spinte che concorrono alla formazione dei prezzi in istanti successivi; in altre parole, dal momento che il mercato è soggetto a movimenti ciclici ritmati dagli schemi comportamentali degli operatori, osservando le evoluzioni passate si può

verosimilmente prevedere la reazione della massa al presentarsi di configurazioni che vengono definite tipiche.

Da quanto detto si evince come l’utilizzo degli indicatori tecnici come input nella fase di addestramento della rete neurale possa portare numerosi vantaggi in termini informativi; non si deve però dimenticare che la gamma di indicatori generalmente utilizzati dagli analisti è vasta e ridondante in quanto ad informazione trattata essendo stata concepita per far risaltare graficamente una stessa dinamica da più punti di vista. Non avendo il nostro algoritmo necessità di ancoraggio “spaziale” e non traendo alcun vantaggio da “facilitazioni grafiche”, si pone la necessità di rispettare la massima parsimonia computazionale tramite la selezione di soltanto quegli indicatori che risultino rilevatori di aspetti il più possibile differenti e

complementari.

Hajek, S. 2003. L’automa finanziario: il supporto della soft computing all’investimento consapevole.

28

2.2.3 Apprendimento

La costruzione della rete neurale deve necessariamente passare per alcune fasi che permettono di fissare i parametri utili per l’idoneo apprendimento. La prima fase di questa analisi si sostanzia nella scelta dell’architettura più adatta: la delicatezza di questa fase consiste nel fatto che il meccanismo di connessione degli input fra loro e di questi e l’output, passando per gli strati nascosti, risulta un elemento decisivo per il successo dell’operazione.

In generale si può sostenere che esistano alcuni parametri da determinare nella definizione dell’architettura:

1. La suddivisione temporale dei dati: l’analista deve suddividere la serie storica in sottoperiodi che delimitano l’ambito di apprendimento (Training Set) e l’ambito di valutazione; quest’ultimo può essere diviso a sua volta in Test Set e

Generalisation Set. Una volta definiti gli ambiti la rete procede cercando di riconoscere la dinamica del training set, verifica il suo adattamento sul tesi set ed infine viene applicata su di un insieme di dati che non ha mai potuto

osservare. I criteri di determinazione ed estrazione dei sottoperiodi possono essere assai vari, ma nell’ambito delle reti neurali applicate alla previsione dei mercati finanziari il criterio che viene suggerito come il più adatto prevede che la serie storica venga rigidamente divisa nei tre periodi di training, test e

generalization secondo questo ordine cronologico.

2. Il numero degli strati nascosti e dei neuroni da inserirvi: per quanto riguarda il numero di Hidden layers, tra i molti contributi metodologici non sono pochi quelli che ritengono che la presenza di anche soltanto un singolo strato nascosto sia sufficiente ad approssimare con un elevato grado di accuratezza le più ricorrenti funzioni non lineari, tuttavia tale approccio vede il suo più grande limite nel fatto di essere legato alla necessità di dover utilizzare un elevato numero di neuroni, il

che limiterebbe il processo di apprendimento della rete stessa; nell’ambito dei problemi di previsione su dati ad alta frequenza come quelli di mercato si ritiene che l’utilizzo di reti neurali con due strati nascosti sia più efficace e quindi

preferibile. Riferendoci invece al numero di neuroni da inserire in ciascuno strato nascosto occorre che la scelta si basi sul principio della “minimizzazione del rischio di overlearning” che si ha nel caso in cui si decida di inserire un numero eccessivo di neuroni che permettono di disegnare quasi perfettamente il pattern della serie storica, ma che non sono poi in grado di generare una previsione affidabile perché riducono il contributo degli input; se viceversa viene inserito un numero eccessivamente basso di neuroni in ciascuno strato si ha il rischio inverso, ovvero quello di ridurre il potenziale di apprendimento della rete. Seppure è vero che i contributi esistenti per individuare il numero di neuroni ottimali sono molti, tra cui:

, ,

,

,

dove è il numero di neuroni nello strato nascosto, è il numero di dati in

input, è il numero di dati in output e è il numero di osservazioni contenute nel training set, i risultati empirici dimostrano che nessuna di queste regole risulta generalizzatile ad ogni problema previsionale .29

n

hl

= 2(n

input

+ 1)

n

hl

= 2 ⋅ n

input

n

hl

= n

input

n

hl

=

n

input

+ n2

output

+ n

training

n

hl

n

input

n

output

n

training

Galati, L. and Gabbi, G., eds. 1999. La previsione nei mercati finanziari: trading system, modelli

29

3. Le connessioni dell’architettura: se si prende in considerazione l’algoritmo di apprendimento back propagation definito nei paragrafi precedenti di questo elaborato è possibile individuare diverse possibilità di connessione fra gli strati della rete: le connessioni standard, le connessioni a salto e le connessioni ripetute. Le connessioni standard prevedono connessioni fra input ed output passanti per gli strati nascosti ai quali risultano essere stati assegnati i neuroni che facilitano il processo di apprendimento della rete; queste connessioni, a prescindere dal numero di strati nascosti, sono dirette e non prevedono né salti né ritorni su se stesse. Le connessioni a salto prevedono invece che la rete assegni dei pesi connettivi anche fra neuroni presenti in strati non adiacenti: nel caso più semplice lo strato di input presenta una serie di connessioni non solo con lo strato nascosto, ma anche con quello di output. Infine, le reti neurali che adoperano connessioni ripetute risultano particolarmente adatte ai problemi di previsione delle serie storiche finanziarie in quanto riconoscono le sequenze che si creano nell’ambito dei mercati; queste connessioni prevedono la possibilità che i neuroni presenti negli strati nascosti della rete possano ritornare sulle variabili di input con processi iterativi che permettono di quantificare in modo preciso il peso connettivo.

4. La funzione di attivazione: anche se non esiste una regola teoricamente

accettabile per definire la funzione di attivazione dei vari strati che compongono la rete neurale, nella pratica vi è la possibilità di individuare numerose funzioni che possono assumere tale ruolo; esse sono esposte nella seguente tabella:

Funzione Formula Lineare Logistica Logistica Simmetrica Tangente Iperbolica Tangente Corretta Sinusoidale Gaussiana Gaussiana Inversa f (x) = 1 − e−x2 f (x) = x f (x) = e−x2 f (x) = sin x con =coeff. f (x) = tanh(c ⋅ x) c f (x) = ex− e−x ex+ e−x f (x) = ( 2 1 + e−x)−1 f (x) = 1 1 + e−x

Figura 36: Sintesi Connessione a Salto

Figura 37: Sintesi Connessione Ripetuta

La finzione lineare viene tipicamente utilizzata per lo strato che contiene l’output della rete dato che questa, pur essendo più rigida delle altre funzioni, evita che il risultato finale tenda al massimo o al minimo; la stessa risulta invece molto meno efficace se inserita negli strati nascosti della rete, soprattutto se caratterizzati da elevati numeri di neuroni presenti. La funzione logistica e la logistica simmetrica presentano la caratteristica di variare nell’ambito di un range rispettivamente (0;1) e (-1;1) e la prima in particolare risulta essere particolarmente utile negli strati nascosti delle reti applicate alla previsione di serie storiche finanziarie. La funzione tangente iperbolica consente di adattare la rete in maniera affidabile negli strati nascosti, in special modo qualora l’analista abbia scelto una funzione logistica o lineare per lo strato di output.

5. L’algoritmo di apprendimento: la scelta della regola di apprendimento è un passaggio fondamentale del processo: in particolare è necessario decidere con quale tasso di cambiamento la rete deve modificare la definizione dei pesi dei neuroni rispetto alla significatività dell’errore commesso. Il rischio nel decidere un tasso di apprendimento troppo elevato consiste nel condizionare la rete ad avere oscillazioni troppo ampie, provocando così la perdita dell’evoluzione corretta della serie storica; così facendo si potrebbe verificare un fenomeno di non convergenza da correggere tramite la riduzione adeguata del learning rate. L’analista deve a questo punto definire il livello iniziale del peso da attribuire alla connessione tra neuroni valutando al contempo se le osservazioni sono

caratterizzate da un elevato tasso di rumore. Il fatto che il processo di

apprendimento debba passare dall’individuazione progressiva del valore più adatto dei parametri appena descritti impone la necessità di effettuare una serie numerosa di tentativi che possono generare anche risultati sensibilmente

6. Gli indicatori di errore: la fase di addestramento si conclude, una volta

selezionate le caratteristiche iniziali della rete, con la scelta dei criteri di arresto; questi criteri possono essere collegati tanto al training set quanto al test set ma se si vuole costruire una rete neurale avente finalità previsionali è preferibile optare per il blocco dell’apprendimento sul test set. Una volta fatto questo, i parametri di apprendimento sono spesso legati ad indicatori di errore commessi dalla rete: l’errore medio, l’errore massimo ed il numero di epoche senza che sia osservabile un miglioramento dell’errore. L’accettazione della rete può essere anche legata al concetto di convergenza, questo perché se anche si osservano valori modesti degli errori

precedentemente elencati, un elevata divergenza generata da oscillazioni

estreme può indicare la necessità di aggiustare i parametri inseriti. A questo punto, una volta che si è verificata la corretta dinamica temporale

dell’errore è necessario che questa venga misurata quantitativamente: i

programmi di apprendimento delle serie storiche tendono ad utilizzare un gran numero di indicatori di errore sviluppati in ambito statistico e fra questi spiccano l’indice di determinazione ( ), il Mean Absolute Error ( ), il Mean Absolute Percentage Error ( ) ed il Mean Square Error ( ) le cui formule sono

riassunte nella seguente tabella : 30

R

2

MAE

MAPE

MSE

Indice Formula

Indice di Determinazione

Mean Absolute Error

Mean Absolute Percentage Error Indice

R2 =ni=1( ̂yi− ¯y)2 ∑ni=1(yi− ¯y)2 MAPE = 1nn i=1 | îy − ŷy i i | MAE =n i=1|yi− xi| n

dove: è il dato stimato dal modello, è la media dei valori osservati, è il dato osservato ed è il

30

Questi indicatori misurano in vario modo il differenziale fra l’output originario e quello stimato dalla rete; solo nel caso in cui tutti i parametri della rete fossero perfettamente in grado di individuare il fenomeno originale gli scostamenti fra output reale e stimato sarebbero nulli, ottimizzando così questi indicatori di errore. Questi indicatori presentano i propri limiti nel fatto di basarsi su un concetto di scostamento simmetrico rispetto al valore reale, mentre in finanza è noto come l’errore si misuri esclusivamente in termini di perdita; risulta per questo

opportuno stimare i pesi della rete in base ai profitti che si ottengono e perciò, in termini operativi, è possibile adottare delle strategie di filtro per la rimozione ex- post del problema.

Documenti correlati