|
|
@ -5,13 +5,14 @@ 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.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:] |
|
|
|
|
|
|
|
pred = MeanAggregator([NormalizedPredictor(), SelectorPredictor({"Tether": 0.7})]) |
|
|
|
pred = MeanAggregator([NormalizedPredictor(),SelectorPredictor({"Tether": 0.7})]) |
|
|
|
|
|
|
|
bot = Bot( |
|
|
|
ptf=InMemoryPortfolio({k:1 for k in head}), |
|
|
@ -22,8 +23,18 @@ if __name__ == '__main__': |
|
|
|
|
|
|
|
bot.print_results() |
|
|
|
print("\n") |
|
|
|
|
|
|
|
for _ in range(3): |
|
|
|
|
|
|
|
TIME = range(400) |
|
|
|
B = [] |
|
|
|
for _ in TIME: |
|
|
|
bot.run_once() |
|
|
|
bot.print_results() |
|
|
|
#bot.print_results() |
|
|
|
assets = bot.ptf.content() |
|
|
|
spread=1/100 |
|
|
|
for k in assets.keys(): |
|
|
|
assets[k]=(1-spread)*assets[k] |
|
|
|
B.append( bot.balance() ) |
|
|
|
print(B[-1]) |
|
|
|
print("\n") |
|
|
|
plt.plot(TIME,B) |
|
|
|
plt.show() |
|
|
|