Una variante del markup "informativo", un test di penna:
def labeling_entropy(dataset, min_Mi = 0.1, min=15, max=15):
labels = []
MIs = []
for i in range(max, dataset.shape[0]-max*2):
rand = random.randint(min, max)
curr_pr = dataset['close'][i]
future_pr = dataset['close'][i + rand]
full_pr = dataset[i-rand:i+rand]
mi = mutual_info_regression(full_pr[full_pr.columns[1:]].iloc[0:rand], full_pr[full_pr.columns[0]].iloc[rand:rand*2])
MIs.append(mi.mean())
if future_pr + MARKUP < curr_pr and mi.mean() > min_Mi:
labels.append(1.0)
elif future_pr - MARKUP > curr_pr and mi.mean() > min_Mi:
labels.append(0.0)
else:
labels.append(2.0)
dataset = dataset.iloc[max:]
dataset = dataset.iloc[:len(labels)].copy()
dataset['labels'] = labels
return dataset.dropna(), MIs
Prendiamo un insieme di segnali e marchiamo le etichette come nei miei articoli, ma tenendo conto dell'informazione reciproca (di tipo regressivo) tra n stringhe dell'insieme di segnali prima di aprire un trade e n stringhe di prezzi futuri.
Se l'informazione reciproca è al di sotto della soglia, si segna come non operare.
quindi addestrato 2 modelli sui segnali e sul trade/non trade, a partire dal 2019.
La cosa più logica da fare era provare altre opzioni:
mi = mutual_info_regression(full_pr[full_pr.columns[1:]].iloc[0:rand], full_pr[full_pr.columns[0]].iloc[0:rand]) сравниваем фичи и цены в момент предсказания
mi = mutual_info_regression(full_pr[full_pr.columns[1:]].iloc[0:rand*2], full_pr[full_pr.columns[0]].iloc[0:rand*2]) сравниваем на глубину предсказания вперед + назад
mi = mutual_info_regression(full_pr[full_pr.columns[1:]].iloc[rand:rand*2], full_pr[full_pr.columns[0]].iloc[rand:rand*2]) только вперед
mi = mutual_info_regression(full_pr.iloc[0:rand], full_pr[full_pr.columns[0]].iloc[rand:rand*2])текущие цены и фичи в момент предсказания VS будущие цены
mytarmailS #: Beh, rileggete il mio post, l'ultima foto.
È ancora scritto
C'erano solo 2 varianti sulle prime 25 barre. E 2 errori sono un piccolo errore. E questa è solo una variante del grafico su migliaia, che ha catturato la tua attenzione. La situazione sarà diversa in altri casi. È necessario elaborare una strategia (che non è stata formulata) e osservare la linea di equilibrio sui nuovi dati (Maxim ha portato la sua idea fino in fondo e tutto è diventato subito chiaro).
Ho fatto la stessa cosa con il clustering più di un anno fa, poi ho determinato i livelli medi come nelle immagini e ho effettuato gli ordini a partire da questi. Divisi in 3 cluster up, down, mean reversion. Funziona benissimo in allenamento.
La cosa divertente è che, a prescindere dai mezzi speciali utilizzati, non è possibile ottenere nulla di buono da un'analisi casuale.
E su quale delle 100 linee previste fare un pronostico? La media è la soluzione più ovvia.
Beh, diciamo che 50 previsioni al rialzo 50 al ribasso, facciamo una media, otteniamo una previsione orizzontale, e allora?)))
e questo è tutto. Quali sono le opzioni?
E su quale delle 100 linee previste fare un pronostico?
Una variante del markup "informativo", un test di penna:
Prendiamo un insieme di segnali e marchiamo le etichette come nei miei articoli, ma tenendo conto dell'informazione reciproca (di tipo regressivo) tra n stringhe dell'insieme di segnali prima di aprire un trade e n stringhe di prezzi futuri.
Se l'informazione reciproca è al di sotto della soglia, si segna come non operare.
quindi addestrato 2 modelli sui segnali e sul trade/non trade, a partire dal 2019.
Risultati:
Non si è ottenuto molto da questo approccio
Non avevo visto il suggerimento)
La cosa più logica da fare era provare altre opzioni:
tutte le opzioni non producono nulla
Beh, rileggete il mio post, l'ultima foto.
C'erano solo 2 varianti sulle prime 25 barre. E 2 errori sono un piccolo errore.
E questa è solo una variante del grafico su migliaia, che ha catturato la tua attenzione. La situazione sarà diversa in altri casi. È necessario elaborare una strategia (che non è stata formulata) e osservare la linea di equilibrio sui nuovi dati (Maxim ha portato la sua idea fino in fondo e tutto è diventato subito chiaro).