Open turbaszek opened 5 years ago
@Bombasarkadian co myślisz?
A nie robimy w końcu integracji z jakimś demo kontem? Czy to w osobnym tasku?
Może zrobimy to za jednym razem? Bot musiałby odpytywać tylko endpoint. Chyba, że faktycznie robimy sobie bota który żyje i trejduje i to jego sukces raportujemy
No tak bym właśnie widział. Spróbujmy raportować prawdziwe wyniki a nie symulację
Możemy zrobi taki endpoint:
GET /prophecy/bot_name/?budget=1000&coins=28.4
Wtedy:
http://cs229.stanford.edu/proj2017/final-reports/5241098.pdf https://www.sciencedirect.com/science/article/pii/S2405918818300539 https://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=8305636 http://aaaquants.com/2017/08/27/machine-learning-lstm-networks/
model = Sequential()
model.add(LSTM(input_shape = (EMB_SIZE,), input_dim=EMB_SIZE, output_dim=HIDDEN_RNN, return_sequences=True))
model.add(LSTM(input_shape = (EMB_SIZE,), input_dim=EMB_SIZE, output_dim=HIDDEN_RNN, return_sequences=False))
model.add(Dense(1))
model.add(Activation('linear'))
MSEs = 0.0246 -> mieliśmy lepsze ~0.012
Tak jak rozmawialiśmy bot powinien być uniwersalny i jako jeden z argumentów przyjmować strategię, w stylu:
def strategy_name(actual_price: float, predicted_price: float, wallet: dict, **kwargs):
# Wallet has to have form {'budget': float, 'coins': float} or something similar
# Do some smart calculations
# Return a decision: 'buy', 'sell', 'keep'
return decision, wallet
Jeśli strategia przyjmowała by jakieś parametry opisujące warunki typu stop-loss to można by ją wrzucić w jakiś optymalizator tak aby znaleźć najlepsze parametry.
Bot:
Prophecy endpoint:
GET /prophecy?tf=1h
zwraca dane do wykresu + statystykiRelated to #73