π ΠΠ±Π·ΠΎΡ
ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ MagicInput Model Training β ΡΡΠΎ Π΄Π²ΠΈΠΆΠΎΠΊ ΠΌΠ°ΡΠΈΠ½Π½ΠΎΠ³ΠΎ ΠΎΠ±ΡΡΠ΅Π½ΠΈΡ, ΡΠΎΠ·Π΄Π°Π½Π½ΡΠΉ Π΄Π»Ρ ΠΎΠ±ΡΡΠ΅Π½ΠΈΡ ΠΏΡΠ΅Π΄ΡΠΊΠ°Π·Π°ΡΠ΅Π»ΡΠ½ΡΡ
ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ
ΡΠΎΡΠ³ΠΎΠ²ΡΡ
ΡΡΡΠ°ΡΠ΅Π³ΠΈΠΉ Π² ΠΊΡΠΈΠΏΡΠΎΠ²Π°Π»ΡΡΠ°Ρ
. ΠΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΡΡΡΡΠΊΡΡΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ Π΄Π°ΡΠ°ΡΠ΅ΡΡ Π² ΡΠΎΡΠΌΠ°ΡΠ΅ .parquet
,
ΡΠ³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ Ρ ΠΏΠΎΠΌΠΎΡΡΡ MagicInput Dataset Builder.
ΠΡΠΈ Π½Π°Π±ΠΎΡΡ Π΄Π°Π½Π½ΡΡ
ΠΎΡ
Π²Π°ΡΡΠ²Π°ΡΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ ΡΡΠ΅Π½Π°ΡΠΈΠΈ ΡΠ΄Π΅Π»ΠΎΠΊ ΠΏΠΎ ΠΊΠ°ΡΠ΅Π³ΠΎΡΠΈΡΠΌ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΌΠ΅ΠΌ-ΡΠΎΠΊΠ΅Π½Ρ), Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡΠΌ
(Long
, Short
) ΠΈ ΡΡΡΠ°ΡΠ΅Π³ΠΈΡΠΌ (scalp
, long_term
ΠΈ Ρ. Π΄.).
ΠΠΎΡΠ»Π΅ ΠΎΠ±ΡΡΠ΅Π½ΠΈΡ ΠΌΠΎΠ΄Π΅Π»Ρ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΏΡΡΠΌΡΡ ΠΈΠ½ΡΠ΅Π³ΡΠΈΡΠΎΠ²Π°ΡΡ Π² ΡΠΎΡΠ³ΠΎΠ²ΠΎΠ³ΠΎ Π±ΠΎΡΠ° Π΄Π»Ρ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΡ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°ΡΠΈΠΉ ΠΏΠΎ ΡΡΡΠ°ΡΠ΅Π³ΠΈΠΈ ΠΈ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ ΠΏΡΠΈΠ½ΡΡΠΈΡ ΡΠ΅ΡΠ΅Π½ΠΈΠΉ Π² ΡΠ΅ΠΆΠΈΠΌΠ΅ ΡΠ΅Π°Π»ΡΠ½ΠΎΠ³ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ.
π§ ΠΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ ΠΌΠΎΠ΄Π΅Π»ΠΈ β mlconfig.yaml
ΠΡΠ΅ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΎΠ±ΡΡΠ΅Π½ΠΈΡ Π½Π°ΡΡΡΠ°ΠΈΠ²Π°Π΅ΡΡΡ ΡΠ΅ΡΠ΅Π· Π³ΠΈΠ±ΠΊΠΈΠΉ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΎΠ½Π½ΡΠΉ ΡΠ°ΠΉΠ»:
# mlconfig.yaml
datasetDir: ./datasets/parquite_latest
modelOutputPath: ./ai/models/trade_predictor.zip
taskType: classification
labelColumn: WinRateAboveThreshold
featureColumns:
- Leverage
- Strategy
- VirtualBalance
- RiskPercent
- SL
- TP
- Breakeven_Trigger
- Breakeven_Buffer
- TrailingSL_Offset
- TrailingTP_Trigger
- LongCond_0_Change
- LongCond_0_Interval
- ShortCond_0_Change
- ShortCond_0_Interval
filter:
symbols:
- DOGE
- PEPE
- WIF
- SHIB
- FLOKI
- BONK
minWinRate: 60
trainer: FastForest
training:
maxIterations: 100
trainTestSplit: 0.8
stratified: true
evaluation:
metrics:
- Accuracy
- AUC
- F1Score
exportTrainingStats: true
π ΠΡ ΠΎΠ΄Π½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅
ΠΠ΅Ρ
Π°Π½ΠΈΠ·ΠΌ ΠΎΠ±ΡΡΠ΅Π½ΠΈΡ ΡΠΊΠ°Π½ΠΈΡΡΠ΅Ρ datasetDir
Π½Π° Π½Π°Π»ΠΈΡΠΈΠ΅ ΡΠ°ΠΉΠ»ΠΎΠ² .parquet
, ΠΊΠ°ΠΊ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ, ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΡ
ΠΏΠΎ:
- ΠΠ°ΡΠ΅Π³ΠΎΡΠΈΡΠΌ β Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ:
meme
,layer1
,AI
- ΠΠ°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡΠΌ β
Long
,Short
,Both
- Π‘ΡΡΠ°ΡΠ΅Π³ΠΈΡΠΌ β
scalp
,long_term
,balance_midterm
ΠΡΠΏΠΎΠ»ΡΠ·ΡΡ Π±Π»ΠΎΠΊ filter
, ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ³ΡΠ°Π½ΠΈΡΠΈΡΡ ΠΎΠ±ΡΡΠ΅Π½ΠΈΠ΅ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΠΌΠΈ ΡΠΈΠΌΠ²ΠΎΠ»Π°ΠΌΠΈ ΠΈΠ»ΠΈ Π·Π°Π΄Π°ΡΡ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΡΠΉ ΡΡΠΎΠ²Π΅Π½Ρ Π²ΡΠΈΠ³ΡΡΡΠ°,
ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠΎΡΠ½ΡΠ΅ ΠΌΠΎΠ΄Π΅Π»ΠΈ ΠΏΠΎΠ΄ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΠ΅ Π°ΠΊΡΠΈΠ²Ρ ΠΈΠ»ΠΈ ΡΡΠ½ΠΎΡΠ½ΡΠ΅ ΡΡΠ»ΠΎΠ²ΠΈΡ.
π§ͺ ΠΡΠ±ΠΎΡ ΠΏΡΠΈΠ·Π½Π°ΠΊΠΎΠ²
ΠΠΎ Π²ΡΠ΅ΠΌΡ ΠΎΠ±ΡΡΠ΅Π½ΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΡΠ΅ ΡΡΠΎΠ»Π±ΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½Ρ Π² featureColumns
.
ΠΠ½ΠΈ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΡΡ ΡΠΎΠ±ΠΎΠΉ Π²Π°ΠΆΠ½ΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ ΠΊΡΠ΅Π΄ΠΈΡΠ½ΠΎΠ΅ ΠΏΠ»Π΅ΡΠΎ, ΡΠΈΡΠΊ Π² ΠΏΡΠΎΡΠ΅Π½ΡΠ°Ρ
, ΡΠΌΠ½ΡΠΉ SL/TP ΠΈ ΡΡΠ»ΠΎΠ²ΠΈΡ ΡΠΎΡΠ³ΠΎΠ²ΠΎΠ³ΠΎ ΡΠΈΠ³Π½Π°Π»Π°.
labelColumn
β ΡΡΠΎ Π±ΠΈΠ½Π°ΡΠ½ΡΠΉ ΡΠ΅Π»Π΅Π²ΠΎΠΉ ΡΡΠΎΠ»Π±Π΅Ρ Π΄Π»Ρ ΠΎΠ±ΡΡΠ΅Π½ΠΈΡ Ρ ΡΡΠΈΡΠ΅Π»Π΅ΠΌ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ:
WinRateAboveThreshold
Π΄Π»Ρ ΠΊΠ»Π°ΡΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ Π½Π°Π±ΠΎΡΠΎΠ² Ρ Π²ΡΡΠΎΠΊΠΎΠΉ ΠΈΡΡΠΎΡΠΈΡΠ΅ΡΠΊΠΎΠΉ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠΈΠ²Π½ΠΎΡΡΡΡ.
βοΈ ΠΠ°ΡΡΡΠΎΠΉΠΊΠΈ ΠΎΠ±ΡΡΠ΅Π½ΠΈΡ
ΠΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ Π²ΠΊΠ»ΡΡΠ°Π΅Ρ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ ΠΎΠ±ΡΡΠ΅Π½ΠΈΡ:
- ΠΠ»Π³ΠΎΡΠΈΡΠΌ:
FastForest
(Π½Π°Π΄Π΅ΠΆΠ½Π°Ρ Π±ΠΈΠ½Π°ΡΠ½Π°Ρ ΠΊΠ»Π°ΡΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ Π΄Π΅ΡΠ΅Π²ΡΠ΅Π² ΡΠ΅ΡΠ΅Π½ΠΈΠΉ) - ΠΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΈΡΠ΅ΡΠ°ΡΠΈΠΉ: ΠΎΠ±ΡΡΠ΅Π½ΠΈΠ΅ Π·Π°Π²Π΅ΡΡΠ°Π΅ΡΡΡ ΠΏΠΎΡΠ»Π΅ N ΠΈΡΠ΅ΡΠ°ΡΠΈΠΉ ΠΈΠ»ΠΈ ΠΏΡΠΈ Π΄ΠΎΡΡΠΈΠΆΠ΅Π½ΠΈΠΈ ΡΡ ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ
- Π Π°Π·Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π½Π° ΠΎΠ±ΡΡΠ΅Π½ΠΈΠ΅/ΡΠ΅ΡΡ: ΡΠΎΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΠ΅ ΠΎΠ±ΡΡΠ°ΡΡΠ΅ΠΉ ΠΈ ΡΠ΅ΡΡΠΎΠ²ΠΎΠΉ Π²ΡΠ±ΠΎΡΠΊΠΈ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, 80% / 20%)
- Π‘ΡΡΠ°ΡΠΈΡΠΈΡΠΈΡΠΎΠ²Π°Π½Π½Π°Ρ Π²ΡΠ±ΠΎΡΠΊΠ°: ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ ΡΠ±Π°Π»Π°Π½ΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ΅ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΊΠ»Π°ΡΡΠΎΠ²
π ΠΡΠ΅Π½ΠΊΠ° ΠΌΠΎΠ΄Π΅Π»ΠΈ
ΠΠΎΡΠ»Π΅ ΠΎΠ±ΡΡΠ΅Π½ΠΈΡ ΠΌΠΎΠ΄Π΅Π»Ρ ΠΎΡΠ΅Π½ΠΈΠ²Π°Π΅ΡΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΡ ΠΌΠ΅ΡΡΠΈΠΊ ΠΊΠ»Π°ΡΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ:
- Accuracy (Π’ΠΎΡΠ½ΠΎΡΡΡ) β Π΄ΠΎΠ»Ρ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΡΡ ΠΏΡΠ΅Π΄ΡΠΊΠ°Π·Π°Π½ΠΈΠΉ
- AUC β ΠΏΠ»ΠΎΡΠ°Π΄Ρ ΠΏΠΎΠ΄ ROC-ΠΊΡΠΈΠ²ΠΎΠΉ
- F1 Score β Π³Π°ΡΠΌΠΎΠ½ΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΡΡΠ΅Π΄Π½Π΅Π΅ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠΎΡΠ½ΠΎΡΡΡΡ ΠΈ ΠΏΠΎΠ»Π½ΠΎΡΠΎΠΉ
ΠΡΠ»ΠΈ Π²ΠΊΠ»ΡΡΠ΅Π½ΠΎ exportTrainingStats
, ΠΌΠ΅ΡΡΠΈΠΊΠΈ ΠΈ Π³ΡΠ°ΡΠΈΠΊΠΈ ΠΏΠΎΡΠ΅ΡΡ ΡΠΎΡ
ΡΠ°Π½ΡΡΡΡΡ Π² ΡΠΎΡΠΌΠ°ΡΠ΅ CSV Π΄Π»Ρ ΠΏΠΎΡΠ»Π΅Π΄ΡΡΡΠ΅Π³ΠΎ Π°Π½Π°Π»ΠΈΠ·Π°.
π¦ ΠΡΠ²ΠΎΠ΄ ΠΌΠΎΠ΄Π΅Π»ΠΈ
ΠΠΎΡΠ»Π΅ ΠΎΠ±ΡΡΠ΅Π½ΠΈΡ Π±ΠΈΠ½Π°ΡΠ½Π°Ρ ΠΌΠΎΠ΄Π΅Π»Ρ ML.NET ΡΠΎΡ
ΡΠ°Π½ΡΠ΅ΡΡΡ Π² modelOutputPath
Π² Π²ΠΈΠ΄Π΅ ΡΠ°ΠΉΠ»Π° .zip
.
ΠΡΠΎΡ ΡΠ°ΠΉΠ» ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π·Π°Π³ΡΡΠΆΠ΅Π½ Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΈ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ:
- β‘ Π Π΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°ΡΠΈΠΈ ΠΏΠΎ ΡΠ΄Π΅Π»ΠΊΠ°ΠΌ Π² ΡΠ΅Π°Π»ΡΠ½ΠΎΠΌ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ
- π Π€ΠΈΠ»ΡΡΡΠ°ΡΠΈΡ Π²Ρ ΠΎΠ΄ΠΎΠ² Ρ ΡΡΠ΅ΡΠΎΠΌ ΡΠΈΡΠΊΠΎΠ²
- π§ ΠΠΎΠ΄Π΄Π΅ΡΠΆΠΊΡ ΠΏΡΠΈΠ½ΡΡΠΈΡ ΡΠ΅ΡΠ΅Π½ΠΈΠΉ Π΄Π»Ρ Π±ΠΎΡΠ°
π Π‘ΡΠ΅Π½Π°ΡΠΈΠΉ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ: ΠΌΠΎΠ΄Π΅Π»ΠΈ ΠΠ ΠΏΠΎ ΠΊΠ°ΡΠ΅Π³ΠΎΡΠΈΡΠΌ
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΎΠ±ΡΡΠΈΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ, ΠΊΠ°ΠΆΠ΄Π°Ρ ΠΈΠ· ΠΊΠΎΡΠΎΡΡΡ
Π±ΡΠ΄Π΅Ρ Π½Π°ΡΠ΅Π»Π΅Π½Π° Π½Π° ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΡΡ ΠΊΠ°ΡΠ΅Π³ΠΎΡΠΈΡ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, meme
ΡΠΎΠΊΠ΅Π½Ρ),
Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠΎΠ»ΡΠΊΠΎ Long
) ΠΈΠ»ΠΈ ΡΠΈΠΏ ΡΡΡΠ°ΡΠ΅Π³ΠΈΠΈ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, scalp
).
ΠΡΠΈ ΠΌΠΎΠ΄Π΅Π»ΠΈ ΠΌΠΎΠ³ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈ Π΄Π»Ρ ΠΏΠΎΠ²ΡΡΠ΅Π½ΠΈΡ ΡΠΎΡΠ½ΠΎΡΡΠΈ ΠΈ ΠΏΠ΅ΡΡΠΎΠ½Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ Π²Π°ΡΠΈΡ
Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ
ΡΡΡΠ°ΡΠ΅Π³ΠΈΠΉ.