gbianchi (OP)
Legendary
Offline
Activity: 3682
Merit: 3353
|
 |
April 16, 2025, 12:52:13 PM |
|
Domanda: come hai determinato i valori dei parametri I_x, S e c?
L_L è sempre 0, L_U li abbiamo scelti ciascuno in base alle proprie aspettative, e gli altri 3? Che metodo hai utilizzato, minimi quadrati o altro?
Ho utilizzato un metodo minimi quadrati empirico: avevo scritto un programmino in perl che ciclava sui valori e determinava i quadrati delle distanze dal tracciato del prezzo segnando i risultati migliori. Tieni anche conto che essendo l'obiettivo una previsione di lungo periodo, non mi interessava avere il migior fitting teorico possibile sui valori del passato, tanto la differenza avrebbe inciso sulle pendenze delle curve di qualche epsilon trascurabile, quindi niente di particolarmente sofisticato.
|
|
|
|
arulbero
Legendary
Offline
Activity: 2122
Merit: 2466
|
 |
April 16, 2025, 01:11:43 PM |
|
Domanda: come hai determinato i valori dei parametri I_x, S e c?
L_L è sempre 0, L_U li abbiamo scelti ciascuno in base alle proprie aspettative, e gli altri 3? Che metodo hai utilizzato, minimi quadrati o altro?
Ho utilizzato un metodo minimi quadrati empirico: avevo scritto un programmino in perl che ciclava sui valori e determinava i quadrati delle distanze dal tracciato del prezzo segnando i risultati migliori. Tieni anche conto che essendo l'obiettivo una previsione di lungo periodo, non mi interessava avere il migior fitting teorico possibile sui valori del passato, tanto la differenza avrebbe inciso sulle pendenze delle curve di qualche epsilon trascurabile, quindi niente di particolarmente sofisticato. Te lo chiedo perchè ho notato, nel confronto tra la logistica versione Plutosky e i prezzi effettivi degli ultimi anni, un buon allineamento a livello di variazioni percentuali medie sugli ultimi 5-6-8-9 anni, ma una divergenza netta invece in relazione agli ultimi 4 anni: Ecco il confronto sui rendimenti passati: rivalutazioni medie effettive rivalutazioni medie previste dal modello
1 anno -> -11% 34% 2 anni -> +38,5% 36% 3 anni -> +6,9% 38,1% 4 anni -> -6% 40,4% 5 anni -> +44,6% 43% 6 anni -> +34,5% 45,7% 7 anni -> +27% 48,6% 8 anni -> +51% 51,9% 9 anni -> +63% 55,4%
|
|
|
|
|
gbianchi (OP)
Legendary
Offline
Activity: 3682
Merit: 3353
|
 |
April 16, 2025, 01:40:00 PM |
|
Te lo chiedo perchè ho notato, nel confronto tra la logistica versione Plutosky e i prezzi effettivi degli ultimi anni, un buon allineamento a livello di variazioni percentuali medie sugli ultimi 5-6-8-9 anni, ma una divergenza netta invece in relazione agli ultimi 4 anni: Ecco il confronto sui rendimenti passati: rivalutazioni medie effettive rivalutazioni medie previste dal modello
1 anno -> -11% 34% 2 anni -> +38,5% 36% 3 anni -> +6,9% 38,1% 4 anni -> -6% 40,4% 5 anni -> +44,6% 43% 6 anni -> +34,5% 45,7% 7 anni -> +27% 48,6% 8 anni -> +51% 51,9% 9 anni -> +63% 55,4%
Magari per la prossima versione posso raffinare il programma di ricerca dei minimi quadrati. Tieni conto pero' che ci sono delle difficolta' tecniche: ad esempio, se il coefficente di "asimmetria" diventa grande, necessita di una grande precisione per il calcolo, se consideri che nella formula c'e' spesso la notazione e^-c oppure -e^-c (me ne sono accorto perche' durante le simulazioni aumentando c oltre a 30 mi venivano fuori risultati tutti a dente di sega  ) La precisione "normale" in floating point del perl e' di 15 cifre (e = 2.71828182845905) anche su piattaforme a 64 bit. Altrimenti bisogna passare a precisioni superiori con librerie per il trattamento di numeri ad alta precisione (tipo BigNum o PARI/GP) Visto che si tratta di un lavoretto che ho fatto per hobby che che ti sei letto in modo approfondito solo tu, forse lo sforzo sarebbe poco proporzionato all'utilita'
|
|
|
|
arulbero
Legendary
Offline
Activity: 2122
Merit: 2466
|
 |
April 16, 2025, 01:49:53 PM |
|
Magari per la prossima versione posso raffinare il programma di ricerca dei minimi quadrati. Tieni conto pero' che ci sono delle difficolta' tecniche: ad esempio, se il coefficente di "asimmetria" diventa grande, necessita di una grande precisione per il calcolo, se consideri che nella formula c'e' spesso la notazione e^-c oppure -e^-c (me ne sono accorto perche' durante le simulazioni aumentando c oltre a 30 mi venivano fuori risultati tutti a dente di sega  ) La precisione "normale" in floating point del perl e' di 15 cifre (e = 2.71828182845905) anche su piattaforme a 64 bit. Altrimenti bisogna passare a precisioni superiori con librerie per il trattamento di numeri ad alta precisione (tipo BigNum o PARI/GP) Visto che si tratta di un lavoretto che ho fatto per hobby che che ti sei letto in modo approfondito solo tu, forse lo sforzo sarebbe poco proporzionato all'utilita' Non era una critica, cercavo solo di capire: hai utilizzato 16 anni di prezzi giornalieri, quindi 365*16 = 5800 dati da approssimare con soli 3 parametri di fatto, giusto? Forse potrebbe avere senso in futuro provare a usare meno dati, tipo solo quelli settimanali, 52*16 = 800 Ovviamente proporre idee come le mie non costa nulla, implementarle è un altro discorso 
|
|
|
|
|
gbianchi (OP)
Legendary
Offline
Activity: 3682
Merit: 3353
|
 |
April 16, 2025, 02:30:32 PM Last edit: April 16, 2025, 03:02:26 PM by gbianchi |
|
Non era una critica, cercavo solo di capire: hai utilizzato 16 anni di prezzi giornalieri, quindi 365*16 = 5800 dati da approssimare con soli 3 parametri di fatto, giusto? Forse potrebbe avere senso in futuro provare a usare meno dati, tipo solo quelli settimanali, 52*16 = 800 Ovviamente proporre idee come le mie non costa nulla, implementarle è un altro discorso  Ah ma non l'ho presa come critica, sono osservazioni corrette ed anche interessanti. Sono decisamente parecchi dati da interpolare con una curva sulla quale si possono manovrare solo 3 parametri su 5 (uno dei quali in modo abbastanza limitato) e i 2 parametri restanti sono bloccati dai prerequisiti di ogni scenario. E' un lavoretto che ho fatto per hobby, ed e' rimasto abbastanza ignorato, quindi come ho gia' detto fra qualche mese ho intenzione di riparametrarlo, ma non so se avro' voglia di spenderci piu' di qualche ora. Temo che il problema di fondo sia che ogni modello che non prevede una crescita che tende all'infinito o giu' di li' non sia molto "amato"; l'obiezione piu' comune e' "Non ha senso far modelli per un futuro cosi' lontanto", e poi magari la stessa gente promuove modelli che prevedono una crescita infinita 
|
|
|
|
Plutosky
Legendary
Offline
Activity: 2856
Merit: 5009
|
 |
April 17, 2025, 09:36:59 AM Last edit: April 17, 2025, 09:53:17 AM by Plutosky |
|
.... Quindi secondo il modello ritagliato sulla tua previsione:
fase1: 0-5 anni -> crescita praticamente esponenziale
fase2: 5-18 anni -> il prezzo aumenta (tasso di variazione del prezzo: f(x+delta t)-f(x) / delta t positivo, ovvero derivata prima del prezzo positiva) il tasso di variazione del prezzo aumenta (derivata seconda del prezzo positiva, o derivata prima del tasso di variazione positiva) il tasso di variazione del tasso di variazione del prezzo aumenta (accelerazione positiva del tasso di variazione, fino a dove la curva del grafico di f è più 'curva') .....
Grazie della esauriente e chiara spiegazione dalla quale però apprendo che il mio modello dovrebbe già essere matematicamente mezzo invalidato  visto che fino al diciottesimo anno di vita avrei previsto una accelerazione nella crescita del rapporto btc/oro che invece nella realtà non si sta verificando (anzi c'è un rallentamento e il pattern reale è sostanzialmente logaritmico già da diversi anni). Proprio perchè in atto da diversi anni in realtà il mio modello era già abbastanza fuori scala fin da quando è stato ideato ma, nell'idearlo, non mi sono basato sulla storia dei prezzi e a nessuno verrebbe in mente, osservando il grafico btc/oro finora, di usare una linea di tendenza logistica per interpolare le dinamiche future. I miei presupposti, ma credo i nostri, si erano basati sul confronto con le adozioni di tecnologie passate, non sullo storico dei prezzi. C'è anche da dire che avevamo scartato il dollaro perchè perde valore di default e quindi non è un'unità stabile del valore, ma abbiamo preso l'oro al denominatore proprio nel momento in cui quest'ultimo sta attraversando forse il più straordinario pump della sua millennaria storia. Per motivi opposti al dollaro, anche l'oro attuale non è che sia una garanzia di stabilità di valore, tuttavia credo che questo suo pump, del tutto slegato al suo trend passato, abbia natura molto speculativa e contingente e poco durevole nel lungo periodo. Ma questa è una mia opinione che andrà testata alla prova dei fatti Vediamo come evolve la situazione nel futuro, credo che il proseguimento dell'anno ci rivelerà diverse sorprese visto anche come è turbolenta la situazione economica globale al momento.
|
"Diversification is protection against ignorance. It makes little sense if you know what you are doing" WB
|
|
|
gbianchi (OP)
Legendary
Offline
Activity: 3682
Merit: 3353
|
 |
April 17, 2025, 10:19:53 AM |
|
....
Vediamo come evolve la situazione nel futuro, credo che il proseguimento dell'anno ci rivelerà diverse sorprese visto anche come è turbolenta la situazione economica globale al momento.
Su questo punto credo siamo tutti d'accordo... In passato, per prendere per i fondelli i trader giornalieri, qui sul forum usava dire "le prossime 24 ore saranno decisive", frase che era appunto abusata dai suddetti trader. Pero' devo dire che i mesi che restano da qui a fine anno li vedo davvero abbastanza importanti per capire certe dinamiche, come ho scritto, il ciclo up di questo halving e' finito o no? come si metteranno le cose per le fiat vs oro e a che livelli di inflazione arriveremo? Riuscira' Bitcoin a sfruttare questa congiuntura estremamente favorevole ad una sua adozione piu' profonda? Insomma, i prossimi mesi potrebbero essere davvero decisivi 
|
|
|
|
|
m.lov
|
 |
April 18, 2025, 12:57:09 PM |
|
Grazie della esauriente e chiara spiegazione dalla quale però apprendo che il mio modello dovrebbe già essere matematicamente mezzo invalidato  visto che fino al diciottesimo anno di vita avrei previsto una accelerazione nella crescita del rapporto btc/oro che invece nella realtà non si sta verificando (anzi c'è un rallentamento e il pattern reale è sostanzialmente logaritmico già da diversi anni). Proprio perchè in atto da diversi anni in realtà il mio modello era già abbastanza fuori scala fin da quando è stato ideato ma, nell'idearlo, non mi sono basato sulla storia dei prezzi e a nessuno verrebbe in mente, osservando il grafico btc/oro finora, di usare una linea di tendenza logistica per interpolare le dinamiche future. I miei presupposti, ma credo i nostri, si erano basati sul confronto con le adozioni di tecnologie passate, non sullo storico dei prezzi. C'è anche da dire che avevamo scartato il dollaro perchè perde valore di default e quindi non è un'unità stabile del valore, ma abbiamo preso l'oro al denominatore proprio nel momento in cui quest'ultimo sta attraversando forse il più straordinario pump della sua millennaria storia.Per motivi opposti al dollaro, anche l'oro attuale non è che sia una garanzia di stabilità di valore, tuttavia credo che questo suo pump, del tutto slegato al suo trend passato, abbia natura molto speculativa e contingente e poco durevole nel lungo periodo. Ma questa è una mia opinione che andrà testata alla prova dei fatti Vediamo come evolve la situazione nel futuro, credo che il proseguimento dell'anno ci rivelerà diverse sorprese visto anche come è turbolenta la situazione economica globale al momento. Sono perfettamente d'accordo con voi che sia più corretto confrontare BTC con l'oro piuttosto che con il dollaro per valutarne il suo effettivo valore. Allo stesso tempo però secondo me basarsi sul valore dell'oro può essere fuorviante in quanto dalla crisi del 2008 (quindi all'incirca dalla nascita di BTC) fino al 2020 secondo me il prezzo dell'oro è stato evidentemente "pilotato" al ribasso sui mercati internazionali. Io non ho le competenze per spiegare le modalità con cui è stato ottenuto questo risultato, ma a me sembra abbastanza evidente che sia accaduto. Negli anni 2015-2020 le banche centrali di Cina, India e Russia (e BRICS in generale) compravano oro a mani basse e in grandi quantità, allo stesso tempo la FED e la BCE stampavano monete fiat a ciclo continuo, ma il prezzo del metallo giallo sembrava non risentirne. E infatti è stato un decennio ottimale per fare incetta di oro fisico (oltre all'oro digitale). Nell'ultimo anno sembra che sia saltato il tappo che teneva sigillato il prezzo dell'oro. Ma a mio modo di vedere i prezzi che vediamo adesso sono una semplice conseguenza della sottovalutazione dell'oro nel decennio 2010-2020. E quello che ho evidenziato nel discorso di Plutosky secondo me deriva proprio dallo stesso motivo. Nell'ultimo anno l'oro ha recuperato tutto quello che non aveva guadagnato in quel decennio. Se qualcuno potesse dare una spiegazione più "tecnica" ed approfondita a questa mia sensazione ne sarei grato.
|
|
|
|
|
gbianchi (OP)
Legendary
Offline
Activity: 3682
Merit: 3353
|
 |
April 18, 2025, 01:59:11 PM |
|
Sono perfettamente d'accordo con voi che sia più corretto confrontare BTC con l'oro piuttosto che con il dollaro per valutarne il suo effettivo valore. Allo stesso tempo però secondo me basarsi sul valore dell'oro può essere fuorviante in quanto dalla crisi del 2008 (quindi all'incirca dalla nascita di BTC) fino al 2020 secondo me il prezzo dell'oro è stato evidentemente "pilotato" al ribasso sui mercati internazionali. Io non ho le competenze per spiegare le modalità con cui è stato ottenuto questo risultato, ma a me sembra abbastanza evidente che sia accaduto. Negli anni 2015-2020 le banche centrali di Cina, India e Russia (e BRICS in generale) compravano oro a mani basse e in grandi quantità, allo stesso tempo la FED e la BCE stampavano monete fiat a ciclo continuo, ma il prezzo del metallo giallo sembrava non risentirne. E infatti è stato un decennio ottimale per fare incetta di oro fisico (oltre all'oro digitale). Nell'ultimo anno sembra che sia saltato il tappo che teneva sigillato il prezzo dell'oro. Ma a mio modo di vedere i prezzi che vediamo adesso sono una semplice conseguenza della sottovalutazione dell'oro nel decennio 2010-2020. E quello che ho evidenziato nel discorso di Plutosky secondo me deriva proprio dallo stesso motivo. Nell'ultimo anno l'oro ha recuperato tutto quello che non aveva guadagnato in quel decennio. Se qualcuno potesse dare una spiegazione più "tecnica" ed approfondita a questa mia sensazione ne sarei grato.
Puo' darsi che l'oro adesso sia particolarmente forte, ma puo' anche darsi che le fiat siano particolarmente deboli, che poi alla fine e' la stessa cosa visto che in economia tutto e' relativo. Non esistono principi di conservazione, tipo la conservazione dell'energia o la conservazione del momento angolare o la velocita' della luce in fisica, quindi non c'e' nessun riferimento assoluto che possiamo usare per le nostre misure. Ci sono solo entita' delle quali possiamo misurare i rapporti relativi. E in questo mondo di "relativita' assoluta" (ossimoro che non potevo non scrivere), se vogliamo misurare la possibilita' di Bitcoin raggiungere la capitalizzazione dell'oro, e' con l'oro che dobbiamo confrontarci, non c'e' nessun altro modo. Se bitcoin vuol raggiungere la capitalizzazione dell'oro, un BTC deve arrivare a valere piu' di 400 Oz t di oro, altrimenti non la raggiunge... di una semplicita' disarmante, togliendo di mezzo tutte le altre variabili che non servono a niente.
|
|
|
|
gbianchi (OP)
Legendary
Offline
Activity: 3682
Merit: 3353
|
 |
April 18, 2025, 03:57:52 PM Merited by fillippone (3) |
|
se volete farvi delle implementazioni/esperimenti/farvi venire un po' di mal di testa, vi posto un po' di codice 1) codice python della logistica asimmetrica LL + (-LL + LU)*(exp((S*(Ix - x)/(-LL + LU) + c*(exp(c) + 1)**((-exp(c) - 1)*exp(-c)))*(exp(c) + 1)**((exp(c) + 1)*exp(-c))) + 1)**(-exp(-c))
2) codice python della derivata della logistica asimmetrica S*(exp(c) + 1)**((exp(c) + 1)*exp(-c))*(exp((S*(Ix - x)/(-LL + LU) + c*(exp(c) + 1)**((-exp(c) - 1)*exp(-c)))*(exp(c) + 1)**((exp(c) + 1)*exp(-c))) + 1)**(-exp(-c))*exp(-c)*exp((S*(Ix - x)/(-LL + LU) + c*(exp(c) + 1)**((-exp(c) - 1)*exp(-c)))*(exp(c) + 1)**((exp(c) + 1)*exp(-c)))/(exp((S*(Ix - x)/(-LL + LU) + c*(exp(c) + 1)**((-exp(c) - 1)*exp(-c)))*(exp(c) + 1)**((exp(c) + 1)*exp(-c))) + 1)
3) Codice LaTeX della derivata \frac{S \left(e^{c} + 1\right)^{\left(e^{c} + 1\right) e^{- c}} \left(e^{\left(\frac{S \left(Ix - x\right)}{- LL + LU} + c \left(e^{c} + 1\right)^{\left(- e^{c} - 1\right) e^{- c}}\right) \left(e^{c} + 1\right)^{\left(e^{c} + 1\right) e^{- c}}} + 1\right)^{- e^{- c}} e^{- c} e^{\left(\frac{S \left(Ix - x\right)}{- LL + LU} + c \left(e^{c} + 1\right)^{\left(- e^{c} - 1\right) e^{- c}}\right) \left(e^{c} + 1\right)^{\left(e^{c} + 1\right) e^{- c}}}}{e^{\left(\frac{S \left(Ix - x\right)}{- LL + LU} + c \left(e^{c} + 1\right)^{\left(- e^{c} - 1\right) e^{- c}}\right) \left(e^{c} + 1\right)^{\left(e^{c} + 1\right) e^{- c}}} + 1}

|
|
|
|
arulbero
Legendary
Offline
Activity: 2122
Merit: 2466
|
 |
April 18, 2025, 04:19:30 PM Last edit: April 18, 2025, 04:45:16 PM by arulbero Merited by fillippone (10) |
|
se volete farvi delle implementazioni/esperimenti/farvi venire un po' di mal di testa, vi posto un po' di codice
Possiamo fare una rappresentazione grafica simile anche di BTC/XAU.  Il pattern adesso cresce in modo molto meno che proporzionale e, dalla analisi grafica, sembra che il trend dei valori minimi (linea rossa) stia performando meglio di quello dei valori massimi (linea blu), il che mi torna perchè testimonia da un lato la maggiore stabilità e maturazione di bitcoin, dall'altro la difficoltà recente a sovraperformare in modo rilevante il sasso giallo. La conseguenza è che la banda di oscillazione tra massimi e minimi si sta riducendo e che bitcoin sembra tendere asintoticamente ad un massimo assoluto tra le 100 e le 140 once dopo il quale ci sarà solo una crescita lentissima al crescere del tempo (secondo il classico andamento di una funzione logaritmica) Ho provato a scaricare i dati settimanali di bitcoin vs dollaro e dollaro vs oro da qui https://it.investing.com/crypto/bitcoin/historical-datache partono però da luglio 2010ho chiesto quindi al nuovo modello gpt-04 di trovare i 3 parametri della nostra curva logistica che meglio approssimano i dati (L_L = 0, L_U =140, ho preso come target il target asintotico della curva logaritmica proposta da Plutosky)) Il grafico qui sopra mostra in arancione i 770 valori reali (Bitcoin in once d’oro) e in linea continua il modello logistico asimmetrico ricostruito con i parametri ottimizzati; si osserva che il fit cattura il trend di crescita di lungo periodo, pur non riuscendo a seguire le oscillazioni più brusche e i picchi (fenomeni tipici delle criptovalute).
Interpretazione rapida
I_x ≈ 770 indica che, con questi limiti superiori scelti, il punto d’inflessione si colloca proprio all’estremo della serie disponibile: il modello “spinge” l’inflessione verso il futuro per accomodare l’accelerazione del rapporto BTC/Oro degli ultimi anni.
S ≈ 0.25 riflette una pendenza relativamente morbida nel punto di inflessione (circa +25 % del range limite per settimana, una crescita comunque molto rapida).
c ≈ −5 rende la curva fortemente asimmetrica: l’inflessione si trova molto più vicina al limite superiore, con una lunga “coda” iniziale quasi piatta e poi un’accelerazione finale.
Questi valori sono il compromesso migliore, in senso RMS, dato che la volatilità e i picchi del dato reale non sono descrivibili da una singola curva sigmoide.
Sull'asse x c'è il numero della settimana, noi siamo adesso alla settimana 770.ChatGpt ha trovato come I_x (punto di flesso) proprio 770, abbastanza strano... La curva prevederebbe come prezzo medio settimanale per questa settimana circa 52 once per btc.   Se vi interessa il codice per fare il plot delle 2 curve: import pandas as pd import numpy as np import matplotlib.pyplot as plt
# --- Load data and parameters ------------------------------------------------- data_path = "/mnt/data/bitcoin_in_gold_weekly.xlsx" df = pd.read_excel(data_path).sort_values("Week").reset_index(drop=True)
x_data = np.arange(1, len(df) + 1) # 1 .. 770 y_data = df["BTC_in_gold"].values
# Parameters found in previous fit (LL=0, LU=140) LL, LU = 0.0, 140.0 I_x, S, c = 770.0, 0.2522498, -5.0 # rounded popt values
# --- Asymmetric logistic model function -------------------------------------- def asymmetric_logistic(x_vals, I_x, S, c): s0 = np.exp(c) + 1.0 s1 = np.exp(-c) s2 = s0 ** (s0 * s1) s3 = S / (LU - LL) y_part = (np.exp(s2 * (s3 * (I_x - x_vals) + c / s2)) + 1.0) ** (-s1) return LL + (LU - LL) * y_part
# --- Generate prediction up to week 2000 ------------------------------------- x_pred = np.arange(1, 2001) # 1 .. 2000 y_pred = asymmetric_logistic(x_pred, I_x, S, c)
# --- Plot --------------------------------------------------------------------- plt.figure(figsize=(9,4)) plt.scatter(x_data, y_data, s=10, label="Dati reali (BTC/Oro)") plt.plot(x_pred, y_pred, linewidth=2, label="Modello logistico (proiezione)") plt.xlim(0, 2000) plt.xlabel("Numero della settimana") plt.ylabel("BTC in once d'oro") plt.title("Proiezione della curva logistica asimmetrica fino alla settimana 2000\n(LL=0, LU=140)") plt.legend() plt.tight_layout() plt.show()
Il codice per trovare i parametri (io non l'ho testato direttamente, mi limito a riportarvelo): import pandas as pd import numpy as np from math import exp import matplotlib.pyplot as plt
# Load the weekly BTC-in-gold data we previously produced data_path = "/mnt/data/bitcoin_in_gold_weekly.xlsx" df = pd.read_excel(data_path)
# Ensure chronological order and reset index df = df.sort_values("Week").reset_index(drop=True) x = np.arange(1, len(df) + 1) # week number (1 .. 770) y = df["BTC_in_gold"].values # target variable
# Fixed logistic parameters LL = 0.0 # lower asymptote LU = 140.0 # upper asymptote
# --- Asymmetric 5‑parameter logistic model (re‑parameterised) ----------------- def asymmetric_logistic(x_vals, I_x, S, c): """ 5‑param asymmetric logistic with LL, LU fixed. Parameters ---------- x_vals : ndarray Independent variable (week number) I_x : float x‑coordinate of inflection point S : float Slope at inflection point c : float Symmetry parameter (0 = symmetric) Returns ------- ndarray Model values at x_vals """ # common sub‑expressions (cfr. Osthege & Helleckes 2021) s0 = np.exp(c) + 1.0 s1 = np.exp(-c) s2 = s0 ** (s0 * s1) s3 = S / (LU - LL) y_part = (np.exp(s2 * (s3 * (I_x - x_vals) + c / s2)) + 1.0) ** (-s1) return LL + (LU - LL) * y_part
# ------------------------------------------------------------------------------
# Use SciPy's curve_fit if available; otherwise fall back to nelder‑mead try: from scipy.optimize import curve_fit popt, pcov = curve_fit( asymmetric_logistic, x, y, # initial guesses: Ix halfway, slope small, symmetry neutral p0=[x.mean(), 0.5, 0.0], bounds=([0.0, -np.inf, -5.0], [x[-1], np.inf, 5.0]), maxfev=20000 ) except Exception as e: # SciPy not present: very light Nelder‑Mead with numpy print("SciPy unavailable – using fallback optimisation.") from functools import partial def mse(params): Ix, S, c = params y_hat = asymmetric_logistic(x, Ix, S, c) return np.mean((y - y_hat) ** 2) # simple random restart Nelder‑Mead best = None best_val = np.inf for guess in [ (x.mean(), 0.5, 0.0), (x.mean()*0.8, 1.0, 0.2), (x.mean()*1.2, 0.1, -0.2) ]: res = scipy.optimize.minimize(mse, guess, method="Nelder-Mead") if res.fun < best_val: best_val, best = res.fun, res.x popt = best pcov = np.full((3,3), np.nan)
I_x, S, c = popt
# Print fitted parameters print(f"Fitted parameters (least‑squares):\n I_x = {I_x:.3f}\n S = {S:.6f}\n c = {c:.6f}")
# Plot data vs model plt.figure(figsize=(8,4)) plt.scatter(x, y, s=10, label="Data (BTC in gold)") plt.plot(x, asymmetric_logistic(x, *popt), linewidth=2, label="Fitted logistic") plt.xlabel("Settimana (index)") plt.ylabel("BTC / Oncia d'oro") plt.title("Adattamento funzione logistica asimmetrica (LL=0, LU=140)") plt.legend() plt.tight_layout() plt.show()
Ho provato anche con un valore più basso di L_U = 110 (più simile alla mia previsione): I_x = 883, s = 0,0969 / settimana, c = -6, per questa settimana il modello prevede circa 30 once a bitcoin, un valore abbastanza in linea con i dati reali  
|
|
|
|
|
Plutosky
Legendary
Offline
Activity: 2856
Merit: 5009
|
 |
April 19, 2025, 07:19:08 AM Merited by fillippone (3) |
|
Sono perfettamente d'accordo con voi che sia più corretto confrontare BTC con l'oro piuttosto che con il dollaro per valutarne il suo effettivo valore. Allo stesso tempo però secondo me basarsi sul valore dell'oro può essere fuorviante in quanto dalla crisi del 2008 (quindi all'incirca dalla nascita di BTC) fino al 2020 secondo me il prezzo dell'oro è stato evidentemente "pilotato" al ribasso sui mercati internazionali. Io non ho le competenze per spiegare le modalità con cui è stato ottenuto questo risultato, ma a me sembra abbastanza evidente che sia accaduto. Negli anni 2015-2020 le banche centrali di Cina, India e Russia (e BRICS in generale) compravano oro a mani basse e in grandi quantità, allo stesso tempo la FED e la BCE stampavano monete fiat a ciclo continuo, ma il prezzo del metallo giallo sembrava non risentirne. E infatti è stato un decennio ottimale per fare incetta di oro fisico (oltre all'oro digitale). Nell'ultimo anno sembra che sia saltato il tappo che teneva sigillato il prezzo dell'oro. Ma a mio modo di vedere i prezzi che vediamo adesso sono una semplice conseguenza della sottovalutazione dell'oro nel decennio 2010-2020. E quello che ho evidenziato nel discorso di Plutosky secondo me deriva proprio dallo stesso motivo. Nell'ultimo anno l'oro ha recuperato tutto quello che non aveva guadagnato in quel decennio. Se qualcuno potesse dare una spiegazione più "tecnica" ed approfondita a questa mia sensazione ne sarei grato.
A volte i mercati manifestano squilibri "sotto traccia" che impiegano tempo per liberarsi a pieno, anche senza ipotizzare macchinazioni o manipolazioni. Anche su bitcoin nel 2024, dopo l'approvazione degli ETF, c'erano segnali di una domanda ben superiore all'offerta ma abbiamo dovuto aspettare novembre per una vera partenza a missile. Serve tempo per vedere gli effetti di certe dinamiche. Sull'oro poi è tutto più lento. Anche se nel nostro "gioco" abbiamo scelto l'oro e quindi con quello bisogna confrontarsi, credo che osservare XAU/USD sia sempre utile perchè è da lì che si capisce quanta domanda di sasso giallo c'è e gli effetti che questa può avere anche su BTC/XAU. negli ultimi 50 anni l'oro ha avuto in almeno due occasioni pump "improvvisi" (improvvisi per le sue abitudini, quindi sempre di anni si parla) simili a quelli attuali dovuti al contesto economico generale, simile all'attuale: 1979-1981: crisi petrolifera, inflazione ufficiale usa al 13%, rivoluzione iraniana, guerra in Afghanistan, onda lunga della fine di Bretton Woods... 2011-2012: GFC, crisi del debito europeo, downgrade del debito USA... Quello che è importante sottolineare è che, in entrambe le situazioni siamo poi crollati in un caso del 65% e nell'altro del 45%Non erano in sostanza crescite sostenibili dovute a causa durevoli, ma temporanee e con una forte componente speculativa.  Non credo che a questo giro sarà molto diverso, anche se il crollo del 1981 fu dovuto alla cura da cavallo Volcker che portò i tassi al 20% (cosa impossibile oggi). Accanto a questo, c'è la lenta, lentissima ma non per questo ignorabile scoperta di bitcoin come risk off asset. Ancora siamo anni luce lontani da quello che avremmo sperato, ma non si può far finta di non vedere che qualcosa sta cambiando. In mezzo a casini, guerre, dazi, borse in caduta...in un clima generale molto freddo e bearish siamo solo a -8.6% da inizio anno, dopo un 2024 con i fuochi d'artificio e con il resto del mercato crypto raso al suolo. Solo 4 anni fa sarebbe andata molto ma molto peggio. Se questo non è un fuoco di paglia credo che ci sarà da divertirsi perchè identificarlo come risk off asset non solo lo riporta nell'habitat che gli compete ma lo rende molto più interessante per i portafogli gonfi che contano nella loro (stupida, secondo me) fissazione con il bisogno di diversificare.
|
"Diversification is protection against ignorance. It makes little sense if you know what you are doing" WB
|
|
|
gbianchi (OP)
Legendary
Offline
Activity: 3682
Merit: 3353
|
 |
April 19, 2025, 07:41:42 AM |
|
...
ho chiesto quindi al nuovo modello gpt-04 di trovare i 3 parametri della nostra curva logistica che meglio approssimano i dati (L_L = 0, L_U =140, ho preso come target il target asintotico della curva logaritmica proposta da Plutosky))
Sull'asse x c'è il numero della settimana, noi siamo adesso alla settimana 770.
ChatGpt ha trovato come I_x (punto di flesso) proprio 770, abbastanza strano...
La curva prevederebbe come prezzo medio settimanale per questa settimana circa 52 once per btc.
....
Ho provato anche con un valore più basso di L_U = 110 (più simile alla mia previsione):
I_x = 883, s = 0,0969 / settimana, c = -6,
Visto che i due Upper bound 140 e 110 non sono poi tanto dissimili credo che i parametri che ti ha sfornato ChatGpt siano decenti per il caso 110 e pessimi per il caso 140. Credo che entrambe le curve si possono ridurre a un fitting decente con l'andamento dei dati. Come al solito, se glielo farai notare, magari fornendogli tu i parametri giusti, ti dira' "hai ragione". Mi chiedo a che cavolo servono tutti qui Gw di energia bruciati 
|
|
|
|
arulbero
Legendary
Offline
Activity: 2122
Merit: 2466
|
 |
April 19, 2025, 10:32:59 AM Merited by fillippone (3) |
|
Visto che i due Upper bound 140 e 110 non sono poi tanto dissimili credo che i parametri che ti ha sfornato ChatGpt siano decenti per il caso 110 e pessimi per il caso 140. Credo che entrambe le curve si possono ridurre a un fitting decente con l'andamento dei dati. Come al solito, se glielo farai notare, magari fornendogli tu i parametri giusti, ti dira' "hai ragione". Mi chiedo a che cavolo servono tutti qui Gw di energia bruciati  Che i risultati forniti da ChatGpt non siano affidabili è innegabile, d'altra parte aiuta a: 1) capire più facilmente l'articolo che hai linkato con quella formula (soprattutto per chi non è esperto) 2) la nuova versione (sia 03 che 04 mini) usa in modo nativo il linguaggio python per 'pensare', quindi fornisce rapidamente degli script a partire dai quali, se uno vuole fare un lavoro serio, si può fare lo studio completo del problema riducendo i tempi In sostanza secondo me questi LLM sono ottimi per aiutarti a imparare a fare qualcosa, sono pessimi se gli chiedi invece di fornirti un prodotto fatto e finito (perchè quasi inevitabilmente conterranno degli errori). Ho fatto quel post soprattutto per condividere gli script (non per i grafici, che sono inaffidabili), script che ovviamente vanno verificati e personalizzati, in modo da fornire un punto di partenza più umano al problema rispetto alla formula della derivata seconda che hai proposto tu Se vuoi attirare più persone che contribuiscano alla discussione e revisione di questo modello logistico, abbassare la soglia di entrata è il primo passo.
|
|
|
|
|
gbianchi (OP)
Legendary
Offline
Activity: 3682
Merit: 3353
|
 |
April 19, 2025, 10:39:11 AM |
|
...
Se vuoi attirare più persone che contribuiscano alla discussione e revisione di questo modello logistico, abbassare la soglia di entrata è il primo passo.
Non vorrei che la gente pensasse che la curva ha un fitting pessimo con l'upper bound 140 e buono od ottimo con l'upper bound 110  Comunque hai ragione, specificando che sono risultati da cui partire e da non ritenere un prodotto finito.
|
|
|
|
arulbero
Legendary
Offline
Activity: 2122
Merit: 2466
|
 |
April 19, 2025, 03:10:36 PM |
|
DISCLAIMER: uso di LLM, risultati non certi!! Come ulteriore esempio di utilizzo degli LLM, ho chiesto a ChatGpt altri tipi di modelli che permettessero una migliore descrizione del fenomeno. Lui mi ha suggerito di aggiungere a una linea di tendenza di tipo logistico una fase oscillatoria di 4 anni che tenga conto della ciclicità di 4 anni degli halving. Ho sempre messo 140 once come target asintotico. Questo modello prevede 6 parametri vs i 5 parametri della logistica asimmetrica di questo thread.      Questi sono i 6 parametri che ha trovato, comprensivi dell'errore medio:  Questi i grafici prodotti, il modello prevederebbe per adesso un prezzo di 35,6 once e per il 2030 (1000 settimane) un prezzo di circa 80 once:  
|
|
|
|
|
gbianchi (OP)
Legendary
Offline
Activity: 3682
Merit: 3353
|
 |
April 19, 2025, 05:13:34 PM |
|
DISCLAIMER: uso di LLM, risultati non certi!!
Come ulteriore esempio di utilizzo degli LLM,
ho chiesto a ChatGpt altri tipi di modelli che permettessero una migliore descrizione del fenomeno.
Lui mi ha suggerito di aggiungere a una linea di tendenza di tipo logistico una fase oscillatoria di 4 anni che tenga conto della ciclicità di 4 anni degli halving. Ho sempre messo 140 once come target asintotico.
....
Interessante.... e' un'idea che avevo esplorato molti anni fa... Avevo fatto delle prove, e l'idea aveva alcuni difetti: sul lungo periodo l'apporto diventa insignificante, mentre sui dati storici del passato la varianza incide troppo. Quindi purtroppo si aggiungono gradi di complessita' a fronte pochi vantaggi e molti svantaggi. Vedo che piu' o meno ChatGpt e' ricaduto nello stesso problema, pero' l'idea e' onestamente interessante ....
Come abbiamo gia' discusso nel thread, la crescita esponenziale nel lungo periodo non e' sostenibile. Quindi quasi tutti i fenomeni che partono con crescita esponenziale, nel tempo poi si "adagiano" su una curva di crescita chiamata logistica.
Pero' quanto sia il periodo di "sostenibilita' esponenziale" non e' cosi' facile da ricavare, ad esempio la legge di moore ha predetto per circa quarant'anni in modo incredibilmente preciso l'incremento della capacita' di calcolo dei processori (raddoppio delle prestazioni ogni 18 mesi)
....
Anzi credo proprio che per ricavare una funzione del prezzo piu' precisa, bisognerebbe adottare proprio il modello di una funzione di "onda smorzata esponenziale", con periodo attorno agli 8 mesi.... se un giorno ho voglia ci provo.
|
|
|
|
arulbero
Legendary
Offline
Activity: 2122
Merit: 2466
|
 |
April 19, 2025, 06:47:30 PM |
|
Interessante.... e' un'idea che avevo esplorato molti anni fa... Avevo fatto delle prove, e l'idea aveva alcuni difetti: sul lungo periodo l'apporto diventa insignificante, mentre sui dati storici del passato la varianza incide troppo. Quindi purtroppo si aggiungono gradi di complessita' a fronte pochi vantaggi e molti svantaggi.
Di fatto a noi interessa più identificare il trend che le oscillazioni stagionali, quindi concordo. Un altro tipo di modellizzazione della crescita, con soli 3 parametri:   
|
|
|
|
|
gbianchi (OP)
Legendary
Offline
Activity: 3682
Merit: 3353
|
 |
April 19, 2025, 07:50:22 PM |
|
Di fatto a noi interessa più identificare il trend che le oscillazioni stagionali, quindi concordo.
Un altro tipo di modellizzazione della crescita, con soli 3 parametri:
...
Questo e' molto interessante, non lo conscevo e voglio approfondirlo. Tra l'altro modella esattamente il nostro tipo di problema.
|
|
|
|
arulbero
Legendary
Offline
Activity: 2122
Merit: 2466
|
 |
April 19, 2025, 08:34:33 PM |
|
Questo e' molto interessante, non lo conoscevo e voglio approfondirlo.
Nemmeno io lo conoscevo Una delle funzioni che apprezzo di più degli LLM è, a parte il discorso che ti aiutano a imparare (e che non è poco), è anche che funzionano molto bene come suggeritori di idee / stimoli che altrimenti non ci sarebbero venuti da soli. C'è anche un famoso professore di matematica, Terence Tao (medaglia Fields), il quale sostiene l'utilità degli LLM proprio in questo senso: Terence Tao ha espresso in diversi interventi e discorsi l’idea che i Large Language Models (LLM) siano strumenti utili soprattutto come generatori di idee e ipotesi nel campo della matematica e della ricerca in generale.
In particolare, in un suo discorso del febbraio 2025 intitolato "Machine-Assisted Proofs", Tao spiega che i LLM possono essere molto utili per suggerire varie idee su come risolvere un problema, anche se molte di queste possono essere errate o già note. Tuttavia, tra le proposte generate, può emergere qualche idea interessante e nuova che vale la pena esplorare. Quindi, i LLM aiutano a stimolare il pensiero creativo e a fornire spunti che l’essere umano può poi valutare e sviluppare ulteriormente. Tao sottolinea che i LLM sono strumenti strani, con capacità diverse da quelle umane: riescono a svolgere compiti che per noi sono difficili e viceversa, e per questo sono complementari all’intelligenza umana.
In un’altra occasione, durante una conferenza del 2024 sulle "Machine Assisted Proofs", Tao ha ribadito che i LLM non sono in grado di risolvere problemi matematici complessi da soli, ma possono essere molto utili come assistenti per generare congetture, scoprire connessioni non ovvie e suggerire nuovi approcci. Questo può portare a nuovi tipi di matematica, in cui si esplorano spazi di teoremi molto ampi con l’aiuto di questi strumenti. Tao immagina un futuro in cui l’automazione delle dimostrazioni matematiche, supportata dall’AI, permetterà di esplorare milioni di affermazioni e capire quali sono vere o false, aprendo nuove strade di ricerca.
Infine, Tao ha anche evidenziato che, pur essendoci molto hype e aspettative esagerate sugli LLM, questi sono strumenti molto potenti per integrare il lavoro umano, soprattutto per fare "relational joins" di dati non strutturati e per fungere da "colla" tra diverse fonti di informazione, più che come fonti autonome di conoscenza o ragionamento profondo.
In un’intervista pubblica con OpenAI (dicembre 2024), Tao ha raccontato un esempio concreto: ha usato un LLM (GenGPT) chiedendogli di suggerire idee per affrontare un’identità matematica che voleva dimostrare. Il modello ha proposto varie strategie, alcune generiche, ma almeno una (l’uso delle funzioni generatrici) si è rivelata utile e non gli era venuta in mente subito. Tao sottolinea che, specie nelle fasi iniziali di un problema, un LLM può aiutare a "coprire sistematicamente il terreno" delle possibili strategie, agendo come una sorta di "sanity check" e aiutando a evitare i classici vicoli ciechi in cui si può incappare pensando da soli.
"A very specific problem I remember was that there was this identity I wanted to prove... I asked [the LLM] to suggest some ideas. ... There was just one suggestion to use generating functions that I did. In retrospect, it was an obvious choice. It just had not occurred to me. ... Sometimes you can think yourself into a rut as a human... So it's a sanity check."
Tao ha anche osservato che, dopo la fase iniziale di brainstorming, il "segnale" utile degli LLM tende a diminuire rispetto al "rumore", e che quando si ha già una buona idea su come procedere, è meglio lavorare in autonomia. Ma ribadisce che nella fase di generazione di idee e ipotesi, questi strumenti sono particolarmente utili.
In altri contesti (blog e interviste), Tao ha spiegato come usa GPT-4 per generare domande sofisticate su preprint matematici, domande che normalmente richiederebbero l’intervento di un esperto. Questo conferma il suo interesse nell’usare gli LLM come generatori di spunti e ipotesi.
|
|
|
|
|
|