|
|
@ -4,20 +4,22 @@ from auto_trading.ptf.in_memory import InMemoryPortfolio |
|
|
|
from auto_trading.predictor.mean_agg import MeanAggregator |
|
|
|
from auto_trading.predictor.normalized import NormalizedPredictor |
|
|
|
from auto_trading.predictor.selector import SelectorPredictor |
|
|
|
from auto_trading.predictor.random_predictor import RandomPredictor |
|
|
|
from auto_trading.main import Bot |
|
|
|
import matplotlib.pyplot as plt |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if __name__ == '__main__': |
|
|
|
csv = "data/price_history.csv" |
|
|
|
with open(csv, 'r') as f: |
|
|
|
head = f.readline().replace("\n", "").split(",")[1:] |
|
|
|
csv = "data/gold.csv" |
|
|
|
|
|
|
|
pred = MeanAggregator([NormalizedPredictor(),SelectorPredictor({"Tether": 0.7})]) |
|
|
|
start = {"USD":10_000, "Gold": 0} |
|
|
|
pred = MeanAggregator([NormalizedPredictor(), SelectorPredictor({"USD": -0.1}), RandomPredictor()]) |
|
|
|
|
|
|
|
bot = Bot( |
|
|
|
ptf=InMemoryPortfolio({k:1 for k in head}), |
|
|
|
ptf=InMemoryPortfolio(start.copy()), |
|
|
|
strategy=AllIn(), |
|
|
|
broker=Backtest(csv, index_col=0, skiprows=1600, names=head), |
|
|
|
broker=Backtest(csv, index_col=0), |
|
|
|
predictor=pred |
|
|
|
) |
|
|
|
|
|
|
|