<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="it">
	<id>http://traderpedia.it/wiki/index.php?action=history&amp;feed=atom&amp;title=Da_un%E2%80%99idea_a_un_trading_system</id>
	<title>Da un’idea a un trading system - Cronologia</title>
	<link rel="self" type="application/atom+xml" href="http://traderpedia.it/wiki/index.php?action=history&amp;feed=atom&amp;title=Da_un%E2%80%99idea_a_un_trading_system"/>
	<link rel="alternate" type="text/html" href="http://traderpedia.it/wiki/index.php?title=Da_un%E2%80%99idea_a_un_trading_system&amp;action=history"/>
	<updated>2026-05-21T00:37:17Z</updated>
	<subtitle>Cronologia della pagina su questo sito</subtitle>
	<generator>MediaWiki 1.35.2</generator>
	<entry>
		<id>http://traderpedia.it/wiki/index.php?title=Da_un%E2%80%99idea_a_un_trading_system&amp;diff=104&amp;oldid=prev</id>
		<title>imported&gt;WikiAdmin: una revisione importata</title>
		<link rel="alternate" type="text/html" href="http://traderpedia.it/wiki/index.php?title=Da_un%E2%80%99idea_a_un_trading_system&amp;diff=104&amp;oldid=prev"/>
		<updated>2011-11-04T08:52:31Z</updated>

		<summary type="html">&lt;p&gt;una revisione importata&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Nuova pagina&lt;/b&gt;&lt;/p&gt;&lt;div&gt;Nelle relazioni sociali due o più persone possono comunicare tra loro se il linguaggio che utilizzano è compatibile, in altre parole se parlano la stessa lingua o se hanno codificato un sistema gestuale trasversale. Se sbagliamo un congiuntivo o se il verbo che utilizziamo nella nostra frase non è propriamente adatto, il nostro cervello analizza il senso del messaggio e lo rende più o meno chiaro. Siamo abituati a questo fin da piccoli e ben conosciamo l’importanza di una buona sintassi espositiva per esporre un nostro pensiero. Anche lo sviluppo di un trading system richiede un linguaggio compatibile tra noi e la nostra controparte, il computer, con una piccola variante. Una sola virgola, un solo punto, una sola parentesi al posto sbagliato rende assolutamente incomprensibile ciò che stiamo chiedendo al nostro computer. &lt;br /&gt;
&amp;lt;center&amp;gt;'''''“Opera, guadagna, poco rischio di rovina finanziaria.”&amp;lt;br&amp;gt;“Opera, guadagna poco, rischio di rovina finanziaria.”'''''&amp;lt;/center&amp;gt;&lt;br /&gt;
La costruzione di un sistema automatico di trading richiede, per prima cosa, un’idea e come conseguenza un linguaggio chiaro, preciso, capace di trasformare la nostra idea di trading in un sistema operativo, in questo caso siamo noi a non dover essere sibillini fornendo esatte e chiare istruzioni al nostro sistema. Per far ciò ci serviamo del linguaggio di programmazione, un tramite tra le nostre intenzioni e il computer, che è composto da operatori matematici, operatori di preferenza e da centinaia di funzioni, per cui una volta appresi i concetti di base, creare formule risulterà molto semplice.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;La prima cosa da conoscere è la trasposizione dei cinque dati principali di uno strumento finanziario: apertura, massimo, minimo, chiusura e volume. Questi cinque valori, chiamati generalmente data array, sono abbreviati così:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;1&amp;quot; cellpadding=&amp;quot;1&amp;quot; width=&amp;quot;200&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| Open &lt;br /&gt;
| High &lt;br /&gt;
| &amp;amp;nbsp;Low &lt;br /&gt;
| &amp;amp;nbsp;Close &lt;br /&gt;
| &amp;amp;nbsp;Volume&lt;br /&gt;
|-&lt;br /&gt;
| O &lt;br /&gt;
| &amp;amp;nbsp;H &lt;br /&gt;
| &amp;amp;nbsp;L &lt;br /&gt;
| C &lt;br /&gt;
| &amp;amp;nbsp;V&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;Per creare qualsiasi formula sono necessari gli operatori matematici ovvero:&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;1&amp;quot; cellpadding=&amp;quot;1&amp;quot; width=&amp;quot;200&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| Somma &lt;br /&gt;
| Sottrazione &lt;br /&gt;
| Moltiplicazione &lt;br /&gt;
| &amp;amp;nbsp;Divisione&lt;br /&gt;
|-&lt;br /&gt;
| + &lt;br /&gt;
| - &lt;br /&gt;
| * &lt;br /&gt;
| /&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;A questo punto siamo già in grado di costruire le prime rudimentali formule, se vogliamo creare un indicatore che rappresenti il prezzo medio di un titolo dobbiamo sommare il massimo al minimo e dividerli per due ovvero: ( H + L ) / 2&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Dove:&amp;lt;br&amp;gt;H = Massimo&amp;lt;br&amp;gt;L = Minimo&amp;lt;br&amp;gt;+ = Somma&amp;lt;br&amp;gt;/ = Diviso&amp;lt;br&amp;gt;2 = Parametro&amp;lt;br&amp;gt;( ) = Parentesi di precedenza&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Abbiamo creato una semplice formula in pochi secondi. Tuttavia la potenza di un simile linguaggio è molto limitata se non si inseriscono altre espressioni, definiamo quindi la trasposizione nel linguaggio di programmazione di:&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp; &lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;1&amp;quot; cellpadding=&amp;quot;1&amp;quot; width=&amp;quot;800&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| Minore di &lt;br /&gt;
| Maggiore di &lt;br /&gt;
| Minore o uguale di &lt;br /&gt;
| Maggiore o uguale di &lt;br /&gt;
| Uguale &lt;br /&gt;
| Diverso&lt;br /&gt;
|-&lt;br /&gt;
| &amp;amp;lt; &lt;br /&gt;
| &amp;amp;nbsp;&amp;amp;gt; &lt;br /&gt;
| &amp;amp;lt; = &lt;br /&gt;
| &amp;amp;nbsp;&amp;amp;gt; = &lt;br /&gt;
| &amp;amp;nbsp;= &lt;br /&gt;
| &amp;amp;lt;&amp;amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;E degli operatori logici E ed O:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;1&amp;quot; cellpadding=&amp;quot;1&amp;quot; width=&amp;quot;200&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| E &lt;br /&gt;
| &amp;amp;nbsp;O&lt;br /&gt;
|-&lt;br /&gt;
| And &lt;br /&gt;
| Or&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;Nonché delle condizioni Se e Allora:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;1&amp;quot; cellpadding=&amp;quot;1&amp;quot; width=&amp;quot;200&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| Se &lt;br /&gt;
| Allora&lt;br /&gt;
|-&lt;br /&gt;
| If &lt;br /&gt;
| &amp;amp;nbsp;Then&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;Infine, va introdotto il controllo che assegna il nome a una variabile ovvero:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;1&amp;quot; cellpadding=&amp;quot;1&amp;quot; width=&amp;quot;200&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| Definisce una variabile&lt;br /&gt;
|-&lt;br /&gt;
| Var:&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;Assimilati questi concetti siamo in grado di realizzare degli indicatori o dei sistemi più sofisticati che anche il computer saprà interpretare e trasformare in strategia operativa. Come esempio impostiamo un sistema automatico prevedendo l’acquisto al superamento da parte del prezzo di una sua media mobile. Costruiamo il nostro sistema, nel linguaggio corrente, scrivendo:&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;• genera un segnale di acquisto quando la chiusura dei prezzi è maggiore della media mobile a 12 periodi, calcolata col metodo semplice sulla chiusura; compera nella barra seguente in apertura; &lt;br /&gt;
&lt;br /&gt;
• genera un segnale di vendita quando la chiusura dei prezzi è inferiore della media mobile a 12 periodi, calcolata col metodo semplice sulla chiusura dei prezzi; vendi nella barra seguente in apertura.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Nel linguaggio parlato è immediatamente chiaro, trasporlo in linguaggio programmazione è più complesso, nulla è lasciato all’interpretazione e tutto deve essere specificato, a partire dal parametro della media mobile 12 che viene definito come una variabile. In formula, nel linguaggio Visual Trader, si può tradurre in:&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;var: media1;&amp;lt;br&amp;gt;media1=mov(c,12,s);&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;if c &amp;amp;gt; media1 then&amp;lt;br&amp;gt;enterlong (nextbar, atopen);&amp;lt;br&amp;gt;endif;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;if c &amp;amp;lt; media1 then&amp;lt;br&amp;gt;entershort (nextbar, atopen);&amp;lt;br&amp;gt;endif;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Come è facile osservare il linguaggio nel quale abbiamo trasportato la nostra idea di trading è molto diverso dal linguaggio parlato e va scomposto pezzo per pezzo. &lt;br /&gt;
&lt;br /&gt;
La prima cosa che abbiamo dovuto impostare è il nome della nostra variabile, in questo caso chiamata media1. Una volta definito il nome della variabile ne impostiamo le caratteristiche, in questo specifico caso la variabile media1 è composta da una media mobile a 12 periodi calcolata sulla chiusura. Le due barre parallele // a lato di ogni riga del sistema permettono l’inserimento di commenti che non influenzano il sistema.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;var: media1; // nome della variabile&amp;lt;br&amp;gt;media1=mov(c,12,s); // caratteristiche della variabile&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Una volta impostata la variabile vanno definite le condizioni operative, se la chiusura (c) è maggiore della variabile media1 entreremo al rialzo (enterlong), il sistema necessita di ulteriori informazioni di ingresso con le funzioni nextbar (alla barra successiva) e atopen (in apertura della barra).&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;''if c &amp;amp;gt; media1 then // se la chiusura è maggiore di media1 allora&amp;lt;br&amp;gt;enterlong (nextbar, atopen); // acquista alla barra successive in apertura&amp;lt;br&amp;gt;endif; // fine delle condizioni &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;if c &amp;amp;lt; media1 then // se la chiusura è minore di media1 allora&amp;lt;br&amp;gt;entershort (nextbar, atopen); // vendi allo scoperto alla barra successive in apertura&amp;lt;br&amp;gt;endif; // fine delle condizioni'' &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;Ora il nostro sistema è pronto e se volessimo cambiare la frequenza della media mobile che genera il segnale è sufficiente farlo solo sul parametro della variabile media1 così facendo, in automatico, si cambieranno tutti i parametri della variabile media1. &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;La media mobile ha come parametri standard i diversi metodi di calcolo che possiamo riassumere come:&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*'''''“s” media mobile semplice''''' &lt;br /&gt;
*'''''''“e” media mobile esponenziale''''' &lt;br /&gt;
*'''''''“a” media mobile aritmetica''''' &lt;br /&gt;
*'''''''“t” media mobile triangolare'''''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;Ora che il primo passo è stato compiuto possiamo pianificare un sistema leggermente più complesso a due variabili. Dobbiamo abituarci fin da subito a scrivere la nostra idea di trading con parole in lingua corrente per poi trasformarle in linguaggio “macchina”.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Ipotizziamo di acquistare quando la media mobile a 12 periodi, calcolata sulla chiusura è superiore alla media mobile a 26 periodi calcolata sulla chiusura. Venderemo quando la media mobile a 12 periodi è inferiore alla media mobile a 26 periodi, entrambe calcolate sulla chiusura. Il primo passo è di definire le due variabili:&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;''var: media1, media2; // nome delle variabili&amp;lt;br&amp;gt;media1=mov(c,12,s); // media mobile semplice veloce&amp;lt;br&amp;gt;media2=mov(c, 26,s); // media mobile semplice lenta&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;if media1 &amp;amp;gt; media2 then // condizioni operative&amp;lt;br&amp;gt;enterlong (nextbar, atopen); // acquista alla barra successive in apertura &amp;lt;br&amp;gt;endif; // fine delle condizioni&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;if media1 &amp;amp;lt; media2 then // condizioni operative&amp;lt;br&amp;gt;entershort (nextbar, atopen); // vendi allo scoperto alla barra successive in apertura&amp;lt;br&amp;gt;endif; // fine delle condizioni&amp;lt;br&amp;gt;''&amp;lt;br&amp;gt;Compresa la logica della programmazione di base è possibile sofisticare il sistema con un numero potenzialmente illimitato di variabili. Per aiutare lo sviluppatore di trading system alcune funzioni racchiudono già un gruppo di variabili, ad esempio se volessimo realizzare un sistema che abbia come motore il macd è possibile utilizzare direttamente la funzione che lo calcola che, in questo caso si chiama macd(Data Array, periodiMM1, periodiMM2).&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;''Var: m1, m2; // nome delle variabili&amp;lt;br&amp;gt;m1=macd(c,12,26); //differenza di medie del macd 12 e 26&amp;lt;br&amp;gt;m2=mov(m1,9,e); //media mobile operativa&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;if m1 &amp;amp;gt; m2 then // condizioni operative&amp;lt;br&amp;gt;enterlong (nextbar, atopen); // acquista alla barra successive in apertura &amp;lt;br&amp;gt;endif; // fine delle condizioni&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;if m1&amp;amp;lt; m2 then // condizioni operative&amp;lt;br&amp;gt;entershort (nextbar, atopen); // vendi allo scoperto alla barra successive in apertura&amp;lt;br&amp;gt;endif; // fine delle condizioni&amp;lt;br&amp;gt;''&amp;lt;br&amp;gt;Anche in questo caso è possibile personalizzare le frequenze sia del macd che della media veloce semplicemente agendo sulle variabili m1 e m2. Una volta creato il sistema è possibile applicarlo al titolo o a un future, come in questo caso, visualizzando in forma grafica i segnali. Le frecce in su rappresentano i long, il tempo del long è colorato di verde, le frecce in giù sono i punti di ingresso short mentre il tempo dello short è colorato di rosso. Sono settaggi standard ma è possibile creare un’ampia personalizzazione, tutti i codici di programmazione presenti in questo libro sono sviluppati nel linguaggio di programmazione Visual Trader . Ogni diverso software professionale di analisi tecnica ha delle piccole differenze nella stesura dei sistemi ma la logica di base e la valutazione è uguale per tutti i programmi. Quello che segue è il grafico con la visualizzazione grafica dei segnali operativi. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;[[Image:Visualizzazione grafica segnali.jpg|center|800px|Visualizzazione grafica segnali.jpg]]&amp;lt;center&amp;gt;&amp;amp;nbsp;''Due medie su grafico a 5 minuti del future spmib. Visualizzazione grafica dei segnali.'' &amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
La visualizzazione grafica dei segnali è importante ma è dal report che si capisce se un sistema è profittevole. Il report che segue è quello della strategia appena creata su 1 anno di dati a 5 minuti e con una commissione di 6€ ad eseguito.&lt;br /&gt;
&lt;br /&gt;
[[Image:Visualizzazione grafica segnali 2.jpg|center|Visualizzazione grafica segnali 2.jpg]]&amp;amp;nbsp;&amp;lt;center&amp;gt;''Due medie su grafico a 5 minuti del future spmib. Report.'' &amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Lasciamo, per ora, da parte il linguaggio e la stesura sintattica di un trading system. Ora abbiamo le basi per capire la logica di programmazione, concentriamo l’attenzione sulla valutazione di un sistema partendo dai suoi elementi più indicativi, il report, la curva dei profitti e la visualizzazione grafica dei segnali operativi.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Vedi anche:  ==&lt;br /&gt;
&lt;br /&gt;
*[[Indice sequenziale Trading System|Indice sequenziale Trading System]] &lt;br /&gt;
*[[Ognuno è fabbro del proprio destino|Ognuno è fabbro del proprio destino]] &lt;br /&gt;
*[[Prevedere il futuro osservando il passato|Prevedere il futuro osservando il passato]] &lt;br /&gt;
*[[I sistemi automatici di trading|I sistemi automatici di trading]] &lt;br /&gt;
*[[Diverse categorie di Trading System|Diverse categorie di trading system]] &lt;br /&gt;
*[[Trend Following|''Trend Following'']] &lt;br /&gt;
*[[Contrarian|''Contrarian'']] &lt;br /&gt;
*[[Volatility Breakout|''Volatility''&amp;amp;nbsp;''Breakout'']] &lt;br /&gt;
*[[Ibridi|''Ibridi'']] &lt;br /&gt;
*[[La pianificazione della strategia operativa|La pianificazione della strategia operativa]] &lt;br /&gt;
*[[Gli errori di logica nella costruzione concettuale|Gli errori di logica nella costruzione concettuale]] &lt;br /&gt;
*[[Da un’idea a un trading system|Da un’idea a un trading system]] &lt;br /&gt;
*[[Il punto della situazione cap1 ts|Il punto della situazione]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Trading_System]]&lt;/div&gt;</summary>
		<author><name>imported&gt;WikiAdmin</name></author>
	</entry>
</feed>