domenica 26 novembre 2023

Come Creare Smart Contract Su Remix Ethereum (Solidity Deploy)

Remix Ethereum
è un ambiente di sviluppo integrato (IDE) utilizzato per semplificare lo sviluppo di smart contract su Ethereum (solidity). Per creare uno smart contract veloce (ricordo di scegliere la chain EVM switchando su Metamask in base a dove intendete sviluppare il contract):

-Create New File
-Scegliere il nome dello smart contract xxx.sol
-Scrivere il codice dello smart contract nel riquadro a destra
-Solidity Compiler (nel riquadro verticale all'estrema sinistra, terza icona) e Compile xxx.sol
-Deploy And Run Transactions (sempre riquadro verticale all'estrema sinistra, quarta icona) e su Environment settare Injected Provider - Metamask (leggerete il vostro address Metamask), infine Deploy (pagherete una commissione, in base alla chain che state utilizzando)

Tramite Deploy e Run Transactions è possibile distribuire i tuoi smart contract direttamente sulla blockchain Ethereum o di Layer2 (EVM). E' possibile simulare anche su blockchain scegliendo "Ambiente VM" (sempre su Environment). Inoltre, fornisce un'interfaccia per interagire con i contracts già esistenti, consentendoti di testare le funzionalità in modo interattivo. La gestione delle librerie può essere effettuata nella sezione "Solidity Compiler" sotto la scheda "Settings".
Sempre nel menù verticale, oltre al Debugger, è possibile trovare l'analizzatore statico di sicurezza: che include uno strumento di analisi statica che può aiutarti a identificare potenziali vulnerabilità di sicurezza nel tuo codice degli smart contract.


FUNZIONI DI BASE DI SOLIDITY
-Contratti: I contratti sono la base di Solidity e rappresentano le unità di codice autonomo sulla blockchain Ethereum.

contract MyContract {
    // Dichiarazioni e logica del contratto
}


-Variabili di stato: e variabili di stato conservano i dati permanenti all'interno del contratto.

uint256 public myVariable;


-Funzioni: Le funzioni eseguono logica specifica quando vengono chiamate.

function myFunction() public {
    // Logica della funzione
}


-Modificatori: i modificatori modificano il comportamento delle funzioni.

modifier onlyOwner() {
    require(msg.sender == owner, "Solo il proprietario può chiamare questa funzione");
    _;
}


-Eventi: gli eventi sono utilizzati per registrare e loggare le attività all'interno del contratto.

event LogEvent(address indexed sender, uint256 value);



-Mapping: i mapping sono strutture dati che associano chiavi a valori.

mapping(address => uint256) public balances;



-Pagamenti e trasferimenti: Solidity supporta l'invio e la ricezione di ETH.

function sendEther() public payable {
    // Ricevere ether
}


-Modelli di programmazione: Solidity supporta la programmazione ad oggetti, la programmazione procedurale e altri paradigmi.

struct Person {
    string name;
    uint256 age;
}


-Gestione delle eccezioni: utilizza require e revert per gestire situazioni di errore.

function myFunction() public {
    require(msg.sender == owner, "Permesso negato");
    // Logica della funzione
}


-ERC-20 Token (standard): Solidity è spesso utilizzato per creare token conformi allo standard ERC-20.

contract ERC20Token {
    mapping(address => uint256) public balances;

    function transfer(address to, uint256 amount) public {
        require(balances[msg.sender] >= amount, "Fondi insufficienti");
        balances[msg.sender] -= amount;
        balances[to] += amount;
    }
}


sabato 18 novembre 2023

La Storia Dell'Insolvenza Di Genesis e Three Arrows Capital (GBTC)

Sicuramente il fallimento di FTX fu quello che fece più notizia nel 2022, in realtà ci furono altre grandi implosioni tra cui Genesis facente capo a Digital Currency Group.
Per comprendere la questione Grayscale Bitcoin Trust e le sue ripercussioni dobbiamo tornare indietro nel tempo fino al 2013, quando Barry Silbert fondò questo trust. Per tanti anni GBTC è stato l'unico modo per gli investitori del mercato azionario di ottenere esposizione a Bitcoin poiché era strutturato come un trust (senza meccanismo di riscatto simile a un ETF), GBTC veniva scambiato al di sopra del suo NAV (valore patrimoniale netto) durante i suoi primi anni di attività.
Ciò significa sostanzialmente che il valore del fondo sul mercato era superiore ai suoi asset sottostanti (BTC). Gli investitori azionari non avevano molta scelta, quindi erano disposti a pagare un premio su GBTC per ottenere esposizione a Bitcoin. Le azioni di GBTC vengono create offrendo Bitcoin e poi 6 mesi dopo ricevi le azioni equivalenti di GBTC. Poiché GBTC veniva scambiato con un premio rispetto al NAV (anche sul 40%), sono diventate possibili operazioni di arbitraggio (cioè shortando X BTC e dando X BTC a Grayscale. 6 mesi dopo potresti coprire il tuo short vendendo il GBTC che veniva scambiato con un premio rispetto agli X BTC). In generale se c'è un "premium" su un prodotto come GBTC, significa che le azioni del trust stanno negoziando ad un prezzo superiore al valore netto dell'attivo sottostante (BTC). Gli operatori sfruttano questa differenza di prezzo eseguendo una strategia di arbitraggio. Ad esempio, potrebbero acquistare Bitcoin direttamente sul mercato e contemporaneamente vendere azioni del trust per trarre profitto dalla differenza di prezzo.


ARBITRAGGIO IN LEVA DI THREE ARROWS CAPITAL
Diversi partecipanti al mercato hanno riconosciuto quanto questo scambio fosse redditizio e apparentemente privo di rischi (poiché GBTC era sempre stata scambiata con un premio rispetto al NAV) e hanno iniziato ad accumulare. In particolare due di questi partecipanti: l'hedge fund Three Arrows Capital (3AC) e la piattaforma di lending BlockFi (entrambi ora in bancarotta).
Three Arrows Capital non solo ha farmato il premio GBTC, ma ha anche potenziato il suo Trading andando in leva non utilizzando solo il proprio capitale ma prendendo in prestito enormi quantità di Bitcoin per moltiplicare i propri rendimenti. Ma da chi hanno preso questi BTC in prestito? Da Genesis. 


I PRESTITI DI GENESIS A THREE ARROWS CAPITAL, ALAMEDA E BLOCKFI
Genesis era una delle società di proprietà di Digital Currency Group (società madre creata da Barry Silbert per imitare la struttura aziendale di Berkshire Hathaway e applicarla al mercato delle criptovalute). Insieme a Grayscale, Genesis era uno dei fiori all'occhiello di DCG.
Genesis era il broker più grande, più importante ed essenzialmente unico nel mercato delle criptovalute. Aveva sia un braccio di Trading/derivati (GGT) che un braccio di prestito (GGC) facendo però capo alla stessa società.
Genesis ha preso i Bitcoin da holders, grandi e piccoli, offrendo loro un tasso di interesse sui loro BTC. Ha prestato poi gli stessi ad un tasso di interesse più elevato ed ha guadagnato sullo spread. A chi ha prestato Genesis? Alameda (FTX), BlockFi e Three Arrows Capital, tra gli altri.
Va ricordato che DCG controllava direttamente GGT (la succursale di Trading e derivati di Genesis) e GGC (questa inerente prestiti). GGC non aveva alcun consiglio fino a giugno 2022, quando fu nominato un consiglio con due membri su tre provenienti dalla DCG.
C'era un massiccio incentivo per incoraggiare a concedere prestiti in BTC che sarebbero stati utilizzati per l'arbitraggio GBTC perché quei BTC sarebbero confluiti in Grayscale e sarebbero poi rimasti bloccati lì (poiché non esisteva un meccanismo di redenzione dell'ETF).
Una volta bloccati quei BTC, Grayscale otteneva una commissione del 2% all'anno per "gestire il fondo" (sostanzialmente non facendo nulla). Attualmente GBTC ha oltre 620.000 BTC, il che significa che Grayscale raccoglie oltre 12.000 BTC in commissioni ogni anno (i profitti di Grayscale affluiscono alla società madre DCG). Si evincono quindi alcuni importanti conflitti di interessi tra DCG, Grayscale e Genesis. In effetti, Grayscale era addirittura a conoscenza dei prestiti che Genesis stava concedendo per alimentare il flusso di fondi in GBTC. 


LA FINE DELL'ARBITRAGGIO
Nel corso del tempo, nuovi mezzi per ottenere esposizione a Bitcoin sono diventati disponibili per il mercato azionario (azioni Microstrategy, ETF futures, ETF spot esteri). La nuova concorrenza, insieme all'enorme numero di azioni GBTC create dall'arbitraggio, ha iniziato ad affondare il premio di GBTC.
Il 23 febbraio 2021 il premio di GBTC è diventato negativo (a sconto) per la prima volta. Da allora non è mai stato più positivo e ad un certo punto lo sconto è arrivato fino al 49%, ovvero il fondo valeva solo la metà delle sue attività sottostanti. Praticamente impossibile fare arbitraggio.


IL CROLLO DI TERRA E THREE ARROWS CAPITAL INSOLVENTE
Con la fine dell'arbitraggio sul premium GBTC, Three Arrows Capital ha perso il suo modo più affidabile per fare soldi. Si è poi passati ad un’altra operazione molto rischiosa: il carry trade su TerraUSD (Ust). Sostanzialmente prendevano fondi in prestito a bassi interesse e mettevano a rendita Ust. Nel frattempo Genesis continuava a concedere loro prestiti. Il 7 maggio 2022 l'ecosistema Terra è collassato, con Luna e la stablecoin Ust che sono andati a 0 (Ust fu shortato, Luna è stata inflazionata per cercare di far recuperare il peg ad Ust, tutto vano). Dato il suo utilizzo della leva finanziaria, il crollo di Luna ed Ust ha reso Three Arrows Capital profondamente insolvente. L’insolvenza di Three Arrows ha creato un enorme buco per le società che le hanno concesso prestiti, la più grande delle quali ovviamente Genesis che aveva concesso loro un prestito di oltre 2 miliardi. Con un’adeguata gestione del rischio e l’uso di collaterali, questi tipi di rischi sarebbero stati mitigati. Tuttavia la gestione del rischio di Genesis era pessima. A metà giugno 2022, Three Arrows è andato in default sul prestito Bitcoin concessogli da Genesis.


IL BUCO DI GENESIS
Dopo aver liquidato una quantità incredibilmente piccola di garanzie collaterali in suo possesso, Genesis si è ritrovata con un buco di 1,2 miliardi di dollari nel suo bilancio.
Adesso era anch'essa insolvente. A questo punto, se gli istituti di credito che avevano fornito BTC a Genesis avessero tentato di ritirarli, Genesis non sarebbe stata in grado di far fronte ai propri obblighi.
Invece di dichiarare bancarotta, il CEO di Genesis Michael Moro ha escogitato un piano con Barry Silbert, amministratore delegato della società madre DCG, per nascondere le perdite sul bilancio di Genesis. In questo modo sono stati in grado di alleviare le preoccupazioni degli istituti di credito di Genesis, riducendo così al minimo i prelievi. In cambio della richiesta di fallimento nei confronti di Three Arrows (che ormai non valeva quasi più nulla a causa della completa implosione), DCG avrebbe dato a Genesis una "pagherò cambiario" da 1,1 miliardi di dollari. Moro nel mentre rassicurò il mercato dicendo di aver "attenuato le perdite". La cambiale era, in verità, una completa finzione. Invece di iniettare capitale reale per colmare il buco nel bilancio di Genesis, Barry Silbert ha fornito un pezzo di carta che pagava un tasso di interesse inferiore a quello di mercato e che non poteva essere riscattato per un decennio. È abbastanza chiaro che Silbert sapeva che la cambiale non risolveva l'insolvenza di Genesis perché nella successiva bancarotta di Genesis valutò quella stessa cambiale ad una piccola frazione degli 1,1 miliardi che Genesis sosteneva che valesse. Il buco nel bilancio non era mai stato colmato quindi. Nel mentre, i dirigenti di Genesis si sono dati da fare per convincere i propri clienti che era solvibile affermando falsamente che la cambiale che gli è stata data era un bene corrente (equivalente a contanti). Ciò solleva la questione del perché DCG sia intervenuta. Perché correre il rischio di compiere un atto di frode criminale quando avrebbero potuto lasciare che Genesis fallisse?
In realtà DCG era uno dei maggiori mutuatari di Genesis ed utilizzava la società come salvadanaio.
Infatti, subito dopo l’implosione di Three Arrows che fece un buco nel bilancio di Genesis, il 18 giugno, DCG prese un massiccio prestito di 18.697 BTC da Genesis, già insolvente.
Anche DCG faceva arbitraggio con i premium. Se DCG avesse lasciato fallire Genesis, sarebbe stata coinvolta nel processo di fallimento e sarebbe stata costretta a rimborsare gli ingenti prestiti che aveva preso dalla sua società figlia. Invece Barry Silbert e DCG hanno scelto di nascondere in qualche modo i buchi.


L'INSOLVENZA DI GENESIS
L'insolvenza di Genesis è stata smascherata nel novembre 2022, quando FTX è implosa e i clienti di tutto lo spazio Crypto si sono precipitati a ritirare i loro BTC da qualsiasi ente centralizzato.
Genesis non è stata in grado di soddisfare le richieste di prelievo dei suoi clienti ed ha sospeso i prelievi il 16 novembre 2022. 
Anche dopo aver congelato i prelievi, Genesis ha affermato di non essere insolvente e che aveva abbastanza capitale per soddisfare le richieste di prelievo ma essi non erano immediatamente a disposizione. Il 19 gennaio 2023, Genesis è stata costretta a dichiarare bancarotta e a rivelare lentamente la portata dei suoi imbrogli ai suoi creditori. I creditori si sono trovati di fronte alla dolorosa consapevolezza che l’insolvenza non era mai stata risolta da DCG. Il 19 ottobre 2023 il procuratore generale di New York ha presentato una denuncia civile contro Genesis, DCG e personalmente contro Barry Silbert e Michael Moro. La denuncia sostiene una massiccia cospirazione per frodare centinaia di migliaia di investitori.


CONFRONTO CON FTX
L'implosione del Genesis ha molti parallelismi con la frode dell'exchange FTX:

-Bilanci ingannevoli
-False dichiarazioni pubbliche utilizzate per rassicurare gli investitori
-Un gruppo di addetti ai lavori che perpetrano frodi finanziarie

Barry Silbert e Michael Moro potenzialmente potrebbero finire anche loro in prigione con Sam Bankman Fried di FTX. Moro è stato costretto a lasciare o ad abbandonare la nave poco dopo aver perpetrato la frode sulla cambiale. Anche il consigliere della DCG lasciò poco dopo, probabilmente intuendo che qualcosa di molto sospetto stava succedendo internamente.

domenica 12 novembre 2023

Come Funzionano Le Opzioni: Call, Put e Strike Price

Oggi parliamo di Opzioni tradizionali che sono concettualmente simili a quelle binarie, anche se con qualche differenza. A differenza del Trading dove puoi settare ordini a mercato (comprare al miglior prezzo) o limite (settare un prezzo buy o sell), le opzioni sono contratti finanziari che concedono al loro acquirente il diritto, ma non l'obbligo, di comprare (call option) o vendere (put option) un determinato asset, spesso un titolo azionario (o criptovalute), a un prezzo specifico entro una data di scadenza prefissata (movimento futuro del prezzo quindi). 


CALL
Se compri una "call option" su uno specifico asset, otterrai il diritto di acquistare quell'asset a un prezzo concordato, noto come "strike price". Questo diritto è valido fino alla data di scadenza dell'opzione. Se il prezzo di mercato dell'azione supera il prezzo di esercizio entro la scadenza, puoi esercitare l'opzione e comprare l'azione a quel prezzo. Se il prezzo di mercato rimane al di sotto del prezzo di esercizio, puoi semplicemente scegliere di non esercitare l'opzione, e perderai solo il costo iniziale dell'acquisto dell'opzione (premio).


PUT
Con una "put option" su un specifica asset, otterrai il diritto di vendere quella azione allo strike price concordato fino alla data di scadenza. Se il prezzo di mercato dell'azione scende al di sotto del prezzo di esercizio, puoi esercitare l'opzione e vendere l'azione al prezzo di esercizio, ottenendo un profitto. Se il prezzo di mercato rimane al di sopra del prezzo di esercizio, puoi semplicemente scegliere di non esercitare l'opzione, e perderai solo il costo iniziale dell'acquisto dell'opzione.


ESEMPIO: CALL SU BITCOIN
Supponiamo che al momento, il prezzo di BTC sia di $25,000 per BTC, ma pensi che possa aumentare nei prossimi tre mesi. Decidi di acquistare una "call option" su 1 BTC con un prezzo di esercizio (strike price) di $30,000 e un costo (premio) di $200. Questa opzione ha una scadenza di tre mesi.

Scenario 1 (Mercato rialzista):
Dopo tre mesi, il prezzo raggiunge $35,000 per BTC. In questo caso, puoi esercitare la tua call option, acquistare 1 BTC a $30,000 (il prezzo di esercizio), e poi vendere immediatamente 1 BTC a $35,000 sul mercato. Guadagneresti $5,000 ($35,000 - $30,000) meno il costo iniziale dell'opzione ($200), quindi il tuo guadagno sarebbe di $4,800.

Scenario 2 (Mercato ribassista): 
Se il prezzo di BTC rimane al di sotto dei $30,000, non eserciti l'opzione e perdi solo il costo iniziale dell'opzione ($200).


ESEMPIO: PUT SU ETHEREUM
Ipotizziamo che ETH sia scambiato a $2,000 per token. Decidi di acquistare una "put option" con uno strike price di $1,500 e un costo di $100. La tua opzione ha una scadenza di sei mesi.

Scenario 1 (Mercato ribassista):
Dopo sei mesi, il prezzo di Ethereum scende a $1,000 per token. In questo caso, puoi esercitare la tua put option, vendere i tuoi ETH al prezzo di esercizio di $1,500 (più alto del prezzo di mercato), ottenendo un guadagno di $500 per ogni ETH (meno il premio di acquisto).

Scenario 2 (Mercato rialzista o laterale):
Se il prezzo di Ethereum rimane sopra i $1,500 per token, puoi scegliere di non esercitare l'opzione e perderai solo il costo iniziale dell'opzione ($100).

sabato 4 novembre 2023

Quali Airdrop Arriveranno Nel 2024? Controlla Volumi/Interazioni

Nel mondo cripto si sa che ci sono molti protocolli (chains e dapps) che regalano airdrop (token) interagendo con gli stessi. Sostanzialmente, dal primo airdrop della storia (Uniswap, settembre 2020) ne sono stati elargiti diverse decine, se non centinaia. Decine di miliardi di dollari free, utilizzando semplicemente la DeFi. L'obiettivo dell'articolo non è quello di fare una guida specifica per ogni chains nè di spiegarne i principi per filo e per segno perchè servirebbe un articolo chilometrico ma di citare alcuni checker per controllare interazioni e volumi. Per semplicità e comodità vengono però citate alcune chains che potrebbero airdroppare token free:
-LayerZero (bridge)
-zkSync
-zkEVM (meno sicuro perchè questo layer2 ha ETH come gas e Matic come governance token)
-Mantle (mainnet è incentivata, devi prelevare MNT da Bybit qui per partecipare: Journey Mantle)
-Base
-Linea
-Starknet
-Scroll
-Manta Pacific
-Zora (NFT mint)
-opBNB (meno probabile perchè la BNB Chain ha già BNB come gas-token)


COME RICEVERE AIRDROP?
Sostanzialmente bisogna utilizzare una chain (o più chains in base a quanti airdrop si vogliono provare a ricevere), spostando ETH sopra di essa (verrà usato come gas token) e facendo interazioni nel tempo (settimane, mesi). Per interazioni vuol dire mintare NFT, fornire liquidità o eseguire degli swap sui dex (sono tipo exchange) della chain. Se una di queste chains (o dapps) con cui si interagisce lanciasse il token in futuro è molto probabile che gli utenti che hanno usato la chain in passato vengano premiati.

Cosa fare?
1) Preleva ETH su Metamask sulla chain che ti interessa (bastano 50-100$)
2) Se la chain non è supportata dal tuo exchange preferito, preleva ETH su Arbitrum o Optimism
3) Usa un bridge che supporta la tua chain di interesse e sposta ETH da Arbitrum a Scroll (esempio). Su Owlto Finance trovi un po' tutte le chains (e potrai spostare da Arbitrum a zkSync o da Optimism a Scroll e così via). Tutti i layer2 utilizzano ETH come gas, ad esclusione di opBNB (BNB) e Mantle (MNT). Se usi la chain Mantle devi prelevare MNT (e non ETH) usando Bybit
4) Una volta trasferita la liquidità (ETH per tutte le chains citate sopra o MNT per il solo Mantle) inizia a fare interazioni sulla chain (basta qualche interazione a settimana/mese)
5) Su quali dapps (dex e piattaforme) fare interazioni? Puoi controllare su Defillama selezionando la chain di tuo interesse
6) Se una chain (o dapps sulla chain) lancerà il suo token in futuro e ci hai interagito è molto probabile che sarai eleggibile. Quanto si guadagna? Si spendono in media 30/40$ di fee (in 7/8 mesi) e si possono guadagnare diverse migliaia di dollari (su Blur Markeplace, alcuni address, hanno ricevuto sino a 11 milioni di dollari in regalo con il secondo airdrop). I token ricevuti, una volta listati, sono vendibili sui principali exchange per euro o altre cripto

Checker per controllare i propri volumi, interazioni e dapps usate:

Starknet, Scroll, zkEVM, zkSync, Zora, Base, Linea Checker (zkCodex)

LayerZero, Starknet, Scroll, zkEVM, zkSync checker (10kdrop)

LayerZero, Starknet, zkSync Checker (NFTcopilot)

Base, Scroll, zkSync Checker (Rhino Fi)

Starknet, Linea, zkSync Checker (Trustgo)

zkSync Checker (zkFlow)

Quasi Tutte Le Chains (DappGate)


Stats personali e generali su ogni chain:

LayerZero Checker & Stats (Dune)

zkSync Checker & Stats (Dune)

Linea Checker & Stats (Dune)

Base Checker & Stats (Dune)

Starknet Checker & Stats (Dune)

zkEVM Checker & Stats (Dune)

Zora Checker & Stats (Dune)

Orbiter Finance Stats (Dune)

Lens Protocol Checker & Stats (Dune)

giovedì 2 novembre 2023

Come Funziona Il Trading Algoritmico: Indicatori e Strategie

Il trading algoritmico comporta l'uso di algoritmi informatici per eseguire automaticamente operazioni di acquisto o vendita di asset finanziari sui mercati. Questi algoritmi sono programmati per prendere decisioni basate su dati di mercato in tempo reale e parametri specifici, senza intervento umano. 


FUNZIONAMENTO
-Raccolta dei dati di mercato: vengono raccolti dati da exchange, feed di notizie, indicatori tecnici, dati storici e altro ancora. Questi dati vengono utilizzati per analizzare le condizioni di mercato e prendere decisioni di trading

-Analisi dei dati: gli algoritmi analizzano i dati di mercato per identificare modelli, tendenze, opportunità di arbitraggio (comprare su x ad un prezzo minore ed andare a vendere istantaneamente su y ad un prezzo maggiore) o segnali di trading. Questa analisi può includere l'uso di indicatori tecnici, analisi fondamentali e modelli matematici complessi

-Sviluppo dell'algoritmo: questi algoritmi possono variare in complessità, dalla semplice esecuzione di ordini in base a regole predefinite all'uso di modelli di machine learning avanzati

-Esecuzione degli ordini: una volta che l'algoritmo è settato per eseguire una negoziazione, genera automaticamente un ordine di acquisto o vendita. Questo processo avviene in pochi millisecondi per sfruttare le opportunità di mercato prima che possano cambiare

-Monitoraggio e gestione del rischio: gli algoritmi monitorano costantemente le loro posizioni e le condizioni di mercato in tempo reale. Vengono anche programmati con stop loss (per la mitigazione del rischio) e take profit (quando vengono raggiunti determinati obiettivi)

-Ottimizzazione: gli algoritmi vengono costantemente aggiornati in base alle condizioni di mercato in evoluzione e ai risultati delle operazioni precedenti


I principali vantaggi del trading algoritmico includono la capacità di negoziare in base a criteri oggettivi e la possibilità di gestire più asset e strategie contemporaneamente. Nonchè i velocissimi tempi di acquisto e vendita. 


PRINCIPALI INDICATORI TECNICI
Gli indicatori tecnici sono i medesimi che si usano manualmente, solo che il bot interpreta i dati autonomamente. I principali sono:

-Media mobile (Moving Average): questo indicatore calcola la media dei prezzi di un asset finanziario su un determinato periodo di tempo. Le medie mobili possono essere semplici (SMA) o esponenziali (EMA), e vengono utilizzate per identificare tendenze di mercato. La media mobile semplice tende a rispondere più lentamente ai cambiamenti recenti nei prezzi, poiché tiene conto di tutti i dati nel periodo specificato (è semplicemente la somma della chiusura dei prezzi di un asset diviso il periodo considerato). L'EMA, al contrario, assegna un peso maggiore ai dati più recenti e un peso decrescente ai dati più vecchi. Questo rende l'EMA più sensibile ai cambiamenti recenti nei prezzi (la formula è più complessa ma si evince che il risultato finale è influenzato dalla chiusura più recente dei prezzi di un asset)


-MACD (Moving Average Convergence Divergence): il MACD è un indicatore di momentum che confronta due medie mobili esponenziali. Le intersezioni tra il MACD e la sua linea di segnale possono indicare punti di ingresso o uscita. Linea MACD è la differenza tra la media mobile esponenziale a 12 periodi e la media mobile esponenziale a 26 periodi. La linea MACD riflette il cambiamento di prezzo a breve termine rispetto a quello a lungo termine.
La linea del segnale è una media mobile esponenziale a 9 periodi della linea MACD. Viene utilizzata per generare segnali di acquisto o vendita quando si incrocia con la linea MACD.
L'istogramma rappresenta la differenza tra la linea MACD e la linea del segnale e fornisce ulteriori informazioni sul momento della tendenza. Quando l'istogramma è sopra lo zero, indica un momento rialzista; quando è sotto lo zero, indica un momento ribassista.
Vanno considerati il Crossover MACD (quando la linea MACD attraversa la linea del segnale dall'alto verso il basso, può indicare un segnale di vendita. Al contrario, quando attraversa dall'alto verso il basso, può indicare un segnale di acquisto) e la divergenza (le divergenze tra l'istogramma MACD e il prezzo sottostante possono suggerire una possibile inversione di tendenza)

-RSI (Relative Strength Index): RSI misura la forza relativa di un asset confrontando i guadagni e le perdite in un tempo breve (di solito 14 giorni). L'RSI viene espresso come un valore compreso tra 0 e 100 ed è basato su calcoli che coinvolgono i guadagni e le perdite recenti.
Esso calcola il guadagno o la perdita giornaliera: per ogni giorno del periodo specificato, calcola la differenza tra il prezzo di chiusura di oggi e quello di ieri. Se il prezzo è salito, è un guadagno; se è sceso, è una perdita. Inoltre calcola la media dei guadagni e delle perdite: somma tutti i guadagni e le perdite nei 14 giorni e calcola la media separata per i guadagni e le perdite. Un RSI sopra 70 può indicare che un asset è ipercomprato, mentre un RSI sotto 30 può indicare che è ipervenduto

-Bande di Bollinger: questo indicatore include una media mobile con bande superiori e inferiori che si espandono o contraggono in base alla volatilità del mercato. Le bande di Bollinger sono spesso utilizzate per misurare la volatilità e individuare i punti di inversione. Esse sono formate da 3 bande: superiore (questa rappresenta due deviazioni standard sopra una media mobile semplice a 20 periodi dei prezzi di chiusura. La banda superiore tende a resistere ai movimenti dei prezzi al rialzo), inferiore (questa rappresenta due deviazioni standard sotto la media mobile semplice a 20 periodi. La banda inferiore tende a resistere ai movimenti dei prezzi al ribasso) e media mobile centrale (questa è la stessa media mobile semplice a 20 periodi, posizionata al centro tra le due bande. La media mobile centrale è utilizzata per valutare il trend). Le Bande di Bollinger forniscono informazioni sulla volatilità del mercato e suggeriscono potenziali punti di inversione quando i prezzi si estendono al di fuori delle bande


-Oscillatore Stocastico (Stochastic Oscillator): lo stocastico è un indicatore che misura la velocità e l'ampiezza dei movimenti dei prezzi. Può aiutare a identificare condizioni di ipercomprato o ipervenduto. Quest' oscillatore misura la posizione del prezzo rispetto all'intervallo massimo e minimo di un periodo specificato. Esso produce valori tra 0 e 100 e aiuta a identificare le condizioni di ipercomprato e ipervenduto. Quando lo stocastico supera il valore 80, l'asset è considerato ipercomprato, il che può suggerire una possibile correzione al ribasso. Quando lo stocastico scende sotto il valore 20, l'asset è considerato ipervenduto, il che può indicare una possibile correzione al rialzo. Inoltre, gli incroci delle due linee dello stocastico possono generare segnali di acquisto o vendita


MODELLI MATEMATICI
-Modello Black-Scholes: questo modello viene utilizzato per calcolare il prezzo delle opzioni e si basa su equazioni differenziali stocastiche

-Modello GARCH (Generalized Autoregressive Conditional Heteroskedasticity): questo modello viene utilizzato per analizzare la volatilità dei prezzi e prevedere la volatilità futura in base all'andamento passato


-Modello di Regressione Lineare: esso cerca di identificare la relazione tra una variabile dipendente (ad esempio, il prezzo di un asset) e una o più variabili indipendenti (ad esempio indicatori tecnici) attraverso una linea di regressione

-Mean Reversion Model: questo modello si basa sull'idea che i prezzi tendano a tornare verso una media nel tempo. Gli algoritmi basati su questo modello cercano di sfruttare i movimenti dei prezzi che si discostano dalla media

-Modello di Machine Learning: questi modelli utilizzano algoritmi di apprendimento automatico per analizzare dati storici e identificare pattern o tendenze nei mercati. Ciò può includere algoritmi di regressione, alberi decisionali, reti neurali, etc


COME OPERA UN BOT
I bot di trading algoritmico hanno l'obiettivo di sfruttare le opportunità di trading su un mercato specifico, come ad esempio il mercato delle criptovalute. Il bot implementa una strategia di "mean reversion" (riversione alla media), il che significa che cerca di sfruttare i movimenti dei prezzi che si discostano dalla media storica.

Generalmente abbiamo:
-Raccolta dei dati: il bot raccoglie dati di mercato in tempo reale, come i prezzi di una criptovaluta, gli ordini di acquisto e vendita, e altri indicatori di mercato

-Calcolo della media mobile: il bot calcola la media mobile semplice (SMA) dei prezzi della criptovaluta su un determinato periodo di tempo

-Identificazione di eventuali possibilità di guadagno: Il bot monitora costantemente il prezzo attuale della criptovaluta rispetto alla sua SMA in un certo intervallo di tempo. Se il prezzo si discosta significativamente al di sopra o al di sotto della media, il bot considera questa una possibile opportunità

-Generazione di un ordine: supponiamo che il prezzo attuale sia significativamente al di sotto della SMA a 20 giorni calcolata in precedenza, indicando una possibile opportunità di acquisto secondo la strategia di "mean reversion". Il bot genera quindi un ordine di acquisto con una certa quantità

-Esecuzione dell'ordine: il bot invia automaticamente l'ordine di acquisto al mercato tramite la piattaforma di trading. L'ordine viene eseguito se ci sono venditori disposti a vendere al prezzo specificato dal bot.

-Monitoraggio della posizione: una volta che l'ordine viene eseguito, il bot monitora costantemente la posizione. Potrebbe avere un obiettivo di profitto prefissato o un livello di stop-loss per limitare le perdite in caso di errore e di mercato che si muove in direzione opposta

-Chiusura della posizione: Se il prezzo ritorna verso la SMA a 20 giorni o raggiunge l'obiettivo di profitto prefissato, il bot chiude automaticamente la posizione, vendendo l'asset. Altrimenti, se il prezzo continua a scendere e raggiunge il livello di stop-loss, il bot chiude la posizione per limitare le perdite.

-Ripetizione del processo: i bot continua a eseguire questa strategia su base continua, cercando costantemente opportunità di trading secondo la strategia di "mean reversion"