mnigr's picture
Upload folder using huggingface_hub
85d7308 verified
|
Raw
History Blame Contribute Delete
1.58 kB
---
license: mit
tags:
- xgboost
- crypto
- trading
- tabular-classification
---
# Crypto Mean-Reversion Signal Classifier
XGBoost classifier that predicts whether a mean-reversion trade (triggered when
price z-score crosses ±2.0 relative to a rolling 24h mean) will hit a 0.5% profit
target within the next 12 hourly candles.
Trained on 1h perpetual futures data for: BTC/USDT:USDT, ETH/USDT:USDT, SOL/USDT:USDT, BNB/USDT:USDT, XRP/USDT:USDT, DOGE/USDT:USDT.
## Usage
```python
from huggingface_hub import hf_hub_download
import xgboost as xgb
import json
model_path = hf_hub_download(repo_id="{repo_id}", filename="model.json")
config_path = hf_hub_download(repo_id="{repo_id}", filename="config.json")
model = xgb.XGBClassifier()
model.load_model(model_path)
with open(config_path) as f:
cfg = json.load(f)
# X_new must be a 2D array with columns in exactly this order:
# ['z_score', 'rsi', 'bb_exceeds', 'current_deviation', 'atr_pct', 'adx', 'vol_ratio', 'volume']
prob = model.predict_proba(X_new)[:, 1]
```
## Features expected (in order)
['z_score', 'rsi', 'bb_exceeds', 'current_deviation', 'atr_pct', 'adx', 'vol_ratio', 'volume']
## Reported test accuracy
0.9938
## Limitations
- Trained on a single ~416-day historical window; regime shifts (e.g. low-volatility
vs. trending markets) can degrade performance out of sample.
- Predictions do not account for exchange fees, slippage, or perpetual funding costs.
- This is a research/educational artifact, not financial advice — evaluate carefully
before using it to make real trading decisions.