Per il trader medio, un mercato a breve termine su Polymarket sembra semplice:
Bitcoin sarà più alto o più basso tra cinque minuti?
Un bot di trading vede un problema completamente diverso.
Sta tracciando il prezzo sottostante, il tempo alla scadenza, la liquidità su entrambi i lati, i mercati correlati e il proprio inventario in tempo reale - tutto contemporaneamente:
- Iscriviti al mio canale Telegram per altri contenuti✍️🤫: https://t.me/+VDXq5wkZ2AIxMDBi

Link wallet: https://polymarket.com/@bonereaper?via=dan-kwpx
Mentre un umano sta ancora decidendo se comprare Su o Giù, il bot potrebbe aver già:
**> acquisito un nuovo segnale di prezzo > ricalcolato il prezzo dell'esito > confrontato con il prezzo del contratto > controllato i mercati vicini > piazzato multipli ordini limite > rimodellato l'intera posizione**
È così che alcuni di questi sistemi trasformano piccoli gap di prezzo in più di $1.000 di profitto giornaliero
Ho analizzato l'attività di 1.000+ bot e più di 10 milioni di esecuzioni sui mercati crypto Su/Giù a breve durata di Polymarket tramite Claude.
Inizialmente, il trading sembra completamente caotico. Lo stesso wallet compra Su, aggiunge Giù secondi dopo, vende parte della prima posizione e conclude il mercato detenendo entrambi gli esiti.
Ma una volta ricostruito l'intero ciclo di vita del trade, il rumore inizia ad avere senso. Di solito c'è un sistema molto specifico alla base.
Ecco come funziona l'intera macchina 👇
1. Perché i bot di trading vengono usati su Polymarket
Il vantaggio principale di un bot non è la perfetta previsione del Bitcoin
Il suo vantaggio deriva da velocità, coerenza e capacità di elaborare più informazioni di quante un umano possa realisticamente monitorare contemporaneamente:

Link wallet: https://polymarket.com/@0xb55fa1296e6ec55d0ce53d93b9237389f11764d4-1777575277609?via=dan-kwpx
Un contratto a breve durata non viene prezzato solo in base al fatto che Bitcoin si stia muovendo Su o Giù
L'algoritmo deve anche tenere conto di:
**> distanza dal prezzo di apertura > velocità dell'ultimo movimento > tempo rimanente > volatilità attuale > profondità del book ordini > prezzi di Su e Giù > comportamento nei mercati correlati > feed esatto utilizzato per la risoluzione**
In un mercato di cinque minuti, un'opportunità reale può esistere per solo pochi secondi
Un umano potrebbe ancora passare da un grafico all'altro mentre un altro algoritmo sta già prendendo la liquidità disponibile e sostituendo i suoi ordini
La maggior parte dei bot di trading è costruita attorno a cinque componenti principali:
- Livello Dati - trasmette prezzi esterni e aggiornamenti del book ordini
- Motore di Segnale - rileva cambiamenti che potrebbero influenzare l'esito
- Modello di Probabilità - calcola una probabilità equa indipendente
- Motore di Esecuzione - piazza, cancella e regola gli ordini
- Gestore del Rischio - controlla la dimensione della posizione e blocca operazioni che superano i limiti predefiniti
Un segnale che il Bot può calcolare direttamente dal book ordini è lo squilibrio tra volume di acquisto e vendita:
1def orderbook_imbalance(bids, asks):2 bid_volume = sum(size for price, size in bids)3 ask_volume = sum(size for price, size in asks)45 total_volume = bid_volume + ask_volume67 if total_volume == 0:8 return 0.0910 return (11 bid_volume - ask_volume12 ) / total_volume1314bids = [15 (0.48, 1_250),16 (0.47, 920),17 (0.46, 680)18]1920asks = [21 (0.49, 640),22 (0.50, 510),23 (0.51, 430)24]2526imbalance = orderbook_imbalance(bids, asks)2728print(f"Order-book imbalance: {imbalance:.2%}")
Un valore positivo significa che c'è più volume di acquisto nella sezione analizzata del book. Un valore negativo significa che il volume di vendita è maggiore. Questo segnale da solo non prova che il prezzo si muoverà.
Ordini grandi possono essere cancellati e la liquidità lontana dal miglior prezzo potrebbe non influenzare mai l'esecuzione.
Ma combinato con il movimento di Bitcoin, il tempo rimanente e i feed di prezzo esterni, diventa una parte di un segnale più forte.
Un bot non è utile perché fa trading automaticamente su ogni movimento del mercato. Un sistema solido guadagna il suo vantaggio rifiutando la maggior parte delle configurazioni prima che diventino posizioni.
2. Dopo aver ricevuto un segnale, il Bot aggiorna la probabilità con Bayes 🧮
Supponiamo che Su sia scambiato a 41¢.
Bitcoin accelera improvvisamente, il volume aumenta e il book ordini inizia a mostrare una pressione di acquisto più forte.
Un umano potrebbe pensare:
Questo movimento sembra forte.
Su
potrebbe essere sottoprezzato
L'algoritmo ha bisogno di una risposta più precisa:
Esattamente quanto questo segnale ha cambiato la probabilità di
Su
?
È qui che entra in gioco il teorema di Bayes.

Link wallet: https://polymarket.com/@0xce25e214d5cfe4f459cf67f08df581885aae7fdc-1777575398144?via=dan-kwpx
Bayes permette al modello di iniziare con una probabilità esistente e aggiornarla dopo aver ricevuto nuove prove.
La formula è:
P(Su | Segnale) = P(Segnale | Su) × P(Su) / [P(Segnale | Su) × P(Su) + P(Segnale | Giù) × P(Giù)]
Dove:
P(Su)
* è la probabilità prima del nuovo segnale *
P(Segnale | Su)
* è la frequenza con cui questo segnale appare prima di un risultato Su *
P(Segnale | Giù)
* è la frequenza con cui appare prima di un risultato Giù *
P(Su | Segnale)
è la probabilità aggiornata
Supponiamo:
la probabilità originale di
Su
* è 41% questo segnale appare nel 64% degli scenari storici di *
Su
* lo stesso segnale appare nel 35% degli scenari di *
Giù
1def bayes_update(2 prior_up,3 signal_given_up,4 signal_given_down5):6 numerator = signal_given_up * prior_up78 denominator = (9 numerator10 + signal_given_down * (1 - prior_up)11 )1213 return numerator / denominator1415prior = 0.411617posterior = bayes_update(18 prior_up=prior,19 signal_given_up=0.64,20 signal_given_down=0.3521)2223print(f"Previous probability: {prior:.2%}")24print(f"Updated probability: {posterior:.2%}")
La stima aggiornata è di circa il 56%. Se il contratto è ancora scambiato a 41¢, il bot vede un gap misurabile:
*valore equo interno - 56% prezzo di mercato - 41¢ vantaggio teorico - 15 punti percentuali*
Per un umano, questo potrebbe sembrare una forte idea di trading. Per un Bot, è una differenza specifica tra il valore equo e il prezzo di mercato corrente.
Bayes non è una scorciatoia per le previsioni, tuttavia.
Se il modello dà troppo peso a segnali deboli o conta le stesse informazioni più volte, il risultato sarà costantemente distorto.
Un movimento di prezzo, un aumento di volume e uno squilibrio del book ordini possono sembrare tre conferme separate quando in realtà sono tre effetti dello stesso evento.
Un modello solido deve tenere conto di questa sovrapposizione.
3. Un contratto mal prezzato non è automaticamente un'operazione redditizia
Anche se il modello valuta Su al 56%, comprarlo a 41¢ non crea automaticamente profitto.
L'esecuzione reale include:
*> commissioni taker > spread bid-ask > slippage > esecuzioni parziali > deterioramento del prezzo > incertezza del modello*
Il bot calcola quindi il vantaggio netto - il vantaggio che rimane dopo che la posizione è stata effettivamente eseguita.
1def calculate_net_edge(2 model_probability,3 execution_price,4 fee,5 slippage,6 safety_buffer7):8 gross_edge = (9 model_probability - execution_price10 )1112 net_edge = (13 gross_edge14 - fee15 - slippage16 - safety_buffer17 )1819 return gross_edge, net_edge2021gross, net = calculate_net_edge(22 model_probability=0.56,23 execution_price=0.47,24 fee=0.017,25 slippage=0.005,26 safety_buffer=0.01027)2829print(f"Gross edge: {gross:.2%}")30print(f"Net edge: {net:.2%}")
Il gap originale di nove punti scende a circa sei punti dopo i costi.
Se la liquidità è limitata, il bot potrebbe riempire solo una piccola parte della posizione a 47¢. La dimensione rimanente potrebbe dover essere acquistata a un prezzo più alto.
Il vantaggio può scomparire prima che l'intera posizione sia costruita. La stessa logica si applica all'arbitraggio binario.
Se quantità uguali di Su e Giù possono essere acquisite per meno di $1 dopo tutti i costi, un lato alla fine pagherà $1.
Ma il sistema deve utilizzare il prezzo di esecuzione medio ponderato per volume reale, non semplicemente il prezzo più interessante visibile in cima al book ordini.
È qui che un backtest pulito e l'esecuzione live spesso producono risultati molto diversi. Un umano nota un prezzo insolito. Un Bot deve dimostrare che rimane abbastanza valore dopo l'inclusione dei costi di mercato.
4. Il miglior vantaggio spesso esiste tra mercati correlati 🕸
I contratti a breve durata non si muovono in isolamento.
Un movimento di Bitcoin può influenzare tutti i seguenti:
> la finestra
BTC
* 5m corrente > la finestra successiva di cinque minuti > *
BTC
* 15m > *
BTC
* 1h > i mercati correlati di *
ETH
e
SOL
Ma questi mercati non si aggiornano sempre alla stessa velocità.
Ogni contratto ha il proprio book ordini, liquidità, livello di apertura e partecipanti.
Per esempio:
>
BTC
* 5m potrebbe ricalcolare immediatamente il prezzo > *
BTC
* 15m potrebbe rispondere meno del previsto > una finestra vicina potrebbe mantenere il suo precedente squilibrio del book > un contratto potrebbe diventare costoso > un altro potrebbe continuare a scambiare su presupposti obsoleti*

Link wallet: https://polymarket.com/@flippingsharks?via=dan-kwpx
Il bot misura se il gap tra mercati correlati è uscito dal suo range normale.
Uno strumento semplice è uno z-score:
Z = (spread corrente − spread medio) / deviazione standard
1def spread_zscore(2 current_spread,3 average_spread,4 spread_deviation5):6 return (7 current_spread - average_spread8 ) / spread_deviation910z = spread_zscore(11 current_spread=0.112,12 average_spread=0.036,13 spread_deviation=0.02514)1516print(f"Spread z-score: {z:.2f}")
Una lettura superiore a 3 significa che il gap corrente è molto al di fuori del range che il modello osserva di solito.
Questo non crea automaticamente un'operazione. Un mercato potrebbe essere genuinamente in ritardo. Oppure il mercato che si è mosso per primo potrebbe aver già incorporato informazioni che i contratti vicini non hanno ancora elaborato.
Un Bot inoltre non può confrontare BTC 5m e BTC 15m solo guardando i loro prezzi Su.
Hanno diversi livelli di apertura e diverse quantità di tempo rimanente.
Un sistema serio confronta quanto ogni contratto si è allontanato dal proprio modello di valore equo.
Un umano guarda un mercato. Un bot guarda una rete di probabilità connesse e identifica la parte che si è temporaneamente allontanata dal resto.
5. Cinque modi in cui i Bot trasformano il vantaggio in una posizione 🔄
Una volta che il segnale è stato confermato, la probabilità aggiornata e il vantaggio netto rimane positivo, inizia la fase più interessante.
Il bot deve decidere come costruire e gestire la posizione.
Dopo aver raggruppato le esecuzioni individuali in cicli di trading completi, sono emersi cinque modelli ricorrenti.
1️⃣ Rotazione Dinamica della Posizione
Questo sistema aggiorna continuamente la sua visione e può cambiare direzione più volte all'interno dello stesso contratto. Supponiamo che il modello consideri Su sottoprezzato all'inizio di un mercato di cinque minuti.
Inizia ad accumulare Su tramite ordini limite.
Poi la configurazione cambia:
Bitcoin
* perde slancio il prezzo torna verso il livello di apertura gli acquirenti scompaiono dal book ordini la probabilità di *
Su
del modello diminuisce
Il bot non deve mantenere la posizione originale fino alla risoluzione. Può vendere parte del suo Su, cancellare gli ordini rimanenti e iniziare ad accumulare Giù.
Se il mercato cambia di nuovo, la posizione può essere ricostruita ancora una volta. L'obiettivo non è identificare perfettamente l'esito finale al primo tentativo.
L'obiettivo è rimanere più esposti al lato che è attualmente prezzato al di sotto della stima aggiornata del modello.
La forza di questo approccio è che il bot può abbandonare una visione obsoleta immediatamente.
La debolezza principale sono i falsi inversamenti ripetuti.
Durante una finestra rumorosa, il sistema potrebbe:
comprare
Su
* dopo un movimento al rialzo ridurlo dopo un pullback passare a *
Giù
* ridurre *
Giù
dopo il successivo movimento al rialzo
I costi di esecuzione e i cambiamenti ripetuti di posizione possono gradualmente rimuovere il vantaggio originale.
Un bot di rotazione dovrebbe quindi cambiare direzione solo quando il nuovo segnale è abbastanza forte da coprire il costo di uscita, ricostruzione della posizione e la possibilità di sbagliare di nuovo:

Link wallet: https://polymarket.com/@trinity42?via=dan-kwpx
2️⃣** Arbitraggio Temporale
L'arbitraggio tradizionale appare quando Su e Giù possono essere acquistati contemporaneamente per meno di $1.
L'arbitraggio temporale costruisce i due lati in momenti diversi. Immagina che Bitcoin si muova bruscamente al rialzo poco dopo l'apertura del mercato.
Giù scende a 26¢ e il bot accumula gradualmente 750 contratti a un prezzo medio di 27.4¢. Due minuti dopo, Bitcoin restituisce gran parte del movimento e scambia più vicino al livello di apertura.
Ora Su diventa più economico e il bot acquista 750 Su a un prezzo medio di 49.8¢.
La struttura finale è:
*750 Giù a 27.4¢ 750 Su a 49.8¢ costo totale per coppia completa - 77.2¢*
Indipendentemente dall'esito finale, un contratto in ogni coppia paga $1. Questo crea un margine lordo di 22.8¢ per coppia prima di commissioni e costi di esecuzione. Il dettaglio chiave è che Giù a 27.4¢ e Su a 49.8¢ non sono mai stati disponibili contemporaneamente.
Il bot ha creato l'arbitraggio da due diversi stati di mercato. Tuttavia, il primo acquisto è ancora esposto al rischio direzionale.
Se Bitcoin continua a salire, il bot potrebbe non ricevere mai un prezzo Su sufficientemente interessante per completare la coppia.
Rimarrebbe quindi con 750 contratti Giù che continuano a perdere valore.
Il sistema quindi traccia:
*quantità detenuta su ciascun lato costo medio di entrambi gli esiti costo dell'inventario già protetto dimensione della posizione direzionale non accoppiata tempo massimo consentito per attendere il secondo lato*
Alcuni bot costruiscono la struttura in blocchi più piccoli.
Potrebbero acquistare 100 Giù, aspettare di poter aggiungere 100 Su, completare la prima coppia protetta e solo allora continuare ad aumentare la dimensione.
Questo riduce il potenziale rendimento massimo ma limita anche il rischio di rimanere con una grande posizione unilaterale.
L'arbitraggio temporale funziona meglio in mercati con diversi movimenti significativi in entrambe le direzioni.
Un movimento prolungato in una sola direzione è il suo ambiente più difficile:

Link wallet: https://polymarket.com/@garvy?via=dan-kwpx
3️⃣** Bot Market-Making di Inventario
Questo sistema non gestisce una singola posizione. Gestisce un intero inventario di contratti.
Potrebbe fare trading su:
*BTC, ETH e SOL mercati 5m, 15m, 1h e 4h sia Su che Giù su più finestre*
Il bot compra e vende in piccole quantità mentre traccia continuamente il costo totale del suo inventario. Supponiamo che abbia accumulato entrambi i lati di un contratto. Vicino alla scadenza, Giù diventa il chiaro favorito e si muove a 98¢.
Invece di aspettare semplicemente la risoluzione, il bot potrebbe:
*vendere parte del costoso inventario Giù liberare capitale prima del regolamento mantenere il resto della posizione principale acquistare una piccola quantità di Su a 2¢ spostare il capitale disponibile in un altro mercato*
Acquistare il lato a basso prezzo può inizialmente sembrare insolito.
Ma una piccola posizione a 1-2¢ può fungere da protezione economica contro un improvviso movimento finale. Se non cambia nulla, il costo è limitato. Se Bitcoin attraversa inaspettatamente il livello di apertura, la piccola posizione Su può compensare parte della perdita altrove.
Il bot di inventario può anche sfruttare le differenze tra mercati correlati.
Un contratto può offrire un buon prezzo di entrata. Un altro può fornire liquidità più profonda per un'uscita. Un terzo può offrire il lato opposto a un prezzo insolitamente basso.
La sfida principale è il costo medio dell'inventario completo.
Se il costo medio Su è 56¢ e il costo medio Giù è 49¢, una coppia protetta costa $1.05.
La risoluzione paga solo $1.
Per recuperare quella differenza di cinque centesimi, il sistema ha bisogno di guadagni aggiuntivi dalla vendita di inventario costoso, dal mantenimento di uno squilibrio direzionale controllato, dal guadagno di rebate maker o dallo spostamento del capitale in modo più efficiente tra i mercati:

Link wallet: https://polymarket.com/@polkadot-frog?via=dan-kwpx
4️⃣** Bot Direzionale Coperto
Questa struttura si trova tra l'arbitraggio puro e una posizione completamente direzionale.
Supponiamo che il bot detenga:
*280 Su 257 Giù*
Le prime 257 Su e 257 Giù formano una base protetta. Indipendentemente dall'esito finale, un lato di questo blocco paga $257. I restanti 23 contratti Su creano un'inclinazione direzionale.
Se Su diventa il risultato finale, quei contratti aggiuntivi aumentano il pagamento. Se Giù diventa il risultato finale, la posizione opposta copre la maggior parte dell'esposizione.
Il sistema sta effettivamente dicendo:
Il mio modello attualmente favorisce Su, ma non voglio che l'intera posizione dipenda da un solo esito.
La dimensione dello squilibrio può cambiare durante il mercato. Quando la fiducia aumenta, il bot aggiunge più Su. Quando il segnale si indebolisce, riduce Su o acquista ulteriore Giù.
Detenere entrambi i lati non rende automaticamente la struttura efficiente.
Se le coppie protette sono state costruite sopra $1, creano un margine negativo garantito.
Supponiamo che il costo medio della coppia sia $1.04. I 23 contratti Su extra devono prima recuperare la perdita sulla base protetta, insieme a commissioni e slippage.
Solo dopo che l'intera posizione diventa redditizia.
In alcuni casi, una copertura costosa è meno efficiente del mantenimento di una posizione direzionale più piccola:

Link wallet: https://polymarket.com/@uuddlrlr?via=dan-kwpx
5️⃣** Bot di Acquisizione a Risoluzione Tardiva
Il modello finale si concentra quasi interamente sulla fase di chiusura del mercato.
Quando un esito è quasi determinato, il lato finale probabile potrebbe ancora scambiare a 98-99¢. Il bot acquista il volume rimanente disponibile e attende il pagamento di $1.
Per esempio:
*entrata a 98.6¢ pagamento a $1 profitto lordo - 1.4¢ per contratto*
Il rendimento di ogni operazione è piccolo, quindi il sistema scansiona un gran numero di mercati e utilizza un volume sostanziale.
La strategia può sembrare altamente prevedibile, ma il suo profilo di rendimento è molto irregolare.
Se 99 operazioni generano un centesimo ciascuna e una posizione a 99¢ si risolve in modo errato, i guadagni precedenti possono scomparire.
Quell'esecuzione errata potrebbe derivare da:
*un brusco movimento all'ultimo secondo una differenza tra i feed di prezzo un livello di apertura errato un aggiornamento di risoluzione ritardato un'errata comprensione delle regole del mercato un ordine rimasto attivo troppo a lungo*
Un sistema a risoluzione tardiva quindi ha bisogno di più della velocità.
Deve sapere esattamente quale feed determina l'esito e quanto il valore corrente è lontano dal confine del contratto.
La struttura finale della posizione può essere analizzata a livello programmatico.
1def inspect_position(2 up_quantity,3 down_quantity,4 up_average_price,5 down_average_price6):7 protected_pairs = min(8 up_quantity,9 down_quantity10 )1112 directional_up = max(13 up_quantity - down_quantity,14 015 )1617 directional_down = max(18 down_quantity - up_quantity,19 020 )2122 pair_cost = (23 up_average_price24 + down_average_price25 )2627 return {28 "protected_pairs": protected_pairs,29 "extra_up": directional_up,30 "extra_down": directional_down,31 "average_pair_cost": pair_cost,32 "pair_margin": 1 - pair_cost33 }3435position = inspect_position(36 up_quantity=280,37 down_quantity=257,38 up_average_price=0.51,39 down_average_price=0.4640)4142print(position)
Ma un'istantanea finale non rivela ancora la strategia completa.
Per comprendere il sistema, devi sapere come è stata costruita la posizione, quali parti sono state vendute e come il costo medio è cambiato nel tempo.
6. Trovare un errore di prezzo non basta — il bot deve comunque catturarlo 🎯
Supponiamo che il bot trovi un'opportunità per acquistare Su e Giù per un totale combinato di 94¢. Invia entrambi gli ordini. Su viene riempito completamente.
Prima che Giù venga riempito, il mercato si muove, la liquidità disponibile scompare e il secondo lato diventa più costoso.
L'arbitraggio non esiste più.
Il bot ora detiene una posizione direzionale Su aperta.
Questo è il rischio di inventario.
Un sistema solido non può semplicemente identificare prezzi insoliti. Deve gestire l'intero processo di esecuzione.
Deve decidere:
*quanto tempo attendere per il secondo lato quando aggiustare l'ordine limite quanto squilibrio è accettabile quando rimanere maker e quando eseguire come taker se ridurre il primo lato dopo che il vantaggio è scomparso*
Un modo per gestire questo è attraverso una logica ispirata al modello Avellaneda–Stoikov.
L'idea centrale è semplice: la quotazione accettabile dovrebbe cambiare in base all'inventario già detenuto.
Una formula semplificata è:
Prezzo di riserva = Prezzo equo − Inventario × Rischio × Volatilità² × Tempo
1def reservation_price(2 fair_price,3 inventory,4 risk_aversion,5 volatility,6 time_remaining7):8 inventory_adjustment = (9 inventory10 * risk_aversion11 * volatility ** 212 * time_remaining13 )1415 return fair_price - inventory_adjustment1617quote = reservation_price(18 fair_price=0.57,19 inventory=0.40,20 risk_aversion=0.80,21 volatility=0.18,22 time_remaining=0.2523)2425print(f"Inventory-adjusted quote: {quote:.3f}")
Se il bot detiene già troppo Su, dovrebbe diventare meno disposto ad acquistare ulteriore Su.
Allo stesso tempo, può diventare più aggressivo nell'acquisire Giù per ridurre lo squilibrio.
Anche il tipo di ordine è importante:
GTC
* rimane attivo fino al riempimento o alla cancellazione *
GTD
* scade a un'ora specificata *
FOK
* si riempie completamente o viene cancellato *
FAK
* riempie la quantità disponibile e cancella il resto *
Post-only
garantisce che l'ordine aggiunga liquidità
In un mercato di cinque minuti, la qualità dell'esecuzione può essere più importante della previsione iniziale.
Il modello può stimare correttamente il valore equo e comunque perdere denaro se la posizione viene costruita troppo lentamente o a un prezzo medio inefficiente.
7. Lo strato finale è il dimensionamento della posizione e la protezione del capitale 🛡
Un forte vantaggio non giustifica l'allocazione di tutto il capitale disponibile in un unico mercato.
Esiste sempre la possibilità che:
*il modello abbia sopravvalutato il segnale il secondo lato non venga riempito la liquidità scompaia l'esecuzione media sia peggiore del previsto diverse posizioni correlate perdano valore contemporaneamente*
Un punto di partenza comune per il dimensionamento della posizione è il criterio di Kelly.
La formula è:
f = (b × p − q) ÷ b
\*
Dove:
p
* è la probabilità di successo *
q = 1 − p
* è la probabilità di fallimento *
b
* è il pagamento netto rispetto all'importo a rischio *
f
\ è la frazione di capitale full-Kelly*
In pratica, molti sistemi utilizzano solo una frazione del risultato.
1def fractional_kelly(2 win_probability,3 entry_price,4 fraction=0.255):6 lose_probability = 1 - win_probability78 net_odds = (9 1 - entry_price10 ) / entry_price1112 full_kelly = (13 net_odds * win_probability14 - lose_probability15 ) / net_odds1617 return max(18 full_kelly * fraction,19 020 )2122allocation = fractional_kelly(23 win_probability=0.61,24 entry_price=0.50,25 fraction=0.2526)2728print(f"Capital allocation: {allocation:.2%}")
Il Kelly frazionario riduce la probabilità che una singola stima imprecisa del modello o una cattiva esecuzione causino danni significativi alla strategia.
Il sistema applica quindi dei limiti rigidi:
*dimensione massima per posizione esposizione massima per asset limite sull'inventario non coperto limite di perdita giornaliero arresto di emergenza quando i dati diventano inaffidabili*
Anche la correlazione è importante.
BTC 5m, BTC 15m, ETH 5m e SOL 5m possono sembrare mercati separati, ma durante un movimento ampio delle criptovalute possono tutti perdere valore contemporaneamente.
Il ruolo del risk manager non è massimizzare la dimensione di ogni opportunità interessante.
Il suo ruolo è assicurarsi che un singolo scenario non possa eliminare la capacità del sistema di continuare a operare.
8. Come appare lo stack completo del bot ⚙️
Un bot Polymarket moderno non è un singolo script Python che confronta Binance con il prezzo Up.
Di solito opera su diversi livelli.
Livello 1 - Dati di Mercato
Prezzi esterni, il feed di risoluzione ufficiale, i book degli ordini in tempo reale, le esecuzioni recenti e lo stato degli ordini del bot stesso.
Livello 2 - Segnali
Movimento dei prezzi, volume, volatilità, squilibrio del book e dislocazioni tra mercati correlati.
Livello 3 - Probabilità
Il modello aggiorna la probabilità equa ogni volta che arrivano nuove informazioni significative.
Livello 4 - Logica di Posizione
Il sistema sceglie tra rotazione, arbitraggio temporale, gestione dell'inventario, una copertura direzionale o l'esecuzione a risoluzione tardiva.
Livello 5 - Esecuzione e Rischio
Gli ordini vengono piazzati, cancellati e aggiustati mentre l'inventario e la dimensione della posizione rimangono entro i limiti predefiniti.
Livello 6 - Ricerca
Claude viene utilizzato per analizzare la cronologia delle negoziazioni, identificare strutture ricorrenti, scrivere backtest e studiare cicli di trading non riusciti.
Il ciclo ad alto livello può assomigliare a questo.
1async def run_bot():2 while True:3 state = await receive_market_update()45 signal = build_signal(state)6 probability = update_probability_model(7 state,8 signal9 )1011 edge = scan_for_edge(12 state,13 probability14 )1516 if not edge["tradable"]:17 continue1819 position_plan = choose_position_model(20 state,21 edge22 )2324 orders = build_execution_plan(25 state,26 position_plan27 )2829 if risk_manager_approves(30 orders,31 state32 ):33 await send_orders(orders)
Claude può aiutare a identificare quali strutture si ripetono in milioni di esecuzioni storiche.
Ma il ciclo di trading a bassa latenza stesso dovrebbe rimanere deterministico: ricevere i dati, applicare le regole, verificare i limiti e inviare l'ordine.
Conclusione: i bot redditizi fanno molto più che scegliere tra Su e Giù
I mercati a breve durata sembrano semplici contratti direzionali.
Un sistema redditizio esegue una sequenza molto più lunga:
*riceve un nuovo segnale lo converte in una probabilità verifica il vantaggio netto confronta i mercati correlati seleziona una struttura di posizione gestisce l'esecuzione limita il rischio*
Alcuni Bot ruotano tra Su e Giù più volte all'interno della stessa finestra. Altri accumulano entrambi i lati in momenti diversi. Alcuni gestiscono un ampio inventario su diverse finestre temporali. Altri mantengono una base protetta con un leggero orientamento direzionale.
Un gruppo separato si concentra sul catturare la differenza di prezzo residua poco prima della risoluzione.
Ma la formula di base è solitamente simile:
*dati affidabili una stima di probabilità indipendente vantaggio dopo i costi la giusta struttura di posizione esecuzione precisa rischio controllato*
Questi Bot non sanno dove sarà Bitcoin tra cinque minuti.
Semplicemente sono più veloci nel calcolare quanto ogni possibile risultato dovrebbe valere in questo momento.
Grazie per aver visualizzato il mio articolo, sarei grato per un feedback!
Seguimi su X✌️: https://x.com/Dan1ro0**
Unisciti al mio Telegram per saperne di più✍️: https://t.me/+VDXq5wkZ2AIxMDBi





