Skip to content

Commit 3218b0d

Browse files
committed
fix changes on iteration
1 parent 112b74c commit 3218b0d

File tree

1 file changed

+24
-12
lines changed

1 file changed

+24
-12
lines changed

es.py

+24-12
Original file line numberDiff line numberDiff line change
@@ -16,15 +16,25 @@ def __init__(self):
1616
self.dataclose = self.datas[0].close
1717
self.datavol = self.datas[0].volume
1818

19-
# def stop(self):
20-
# cash = self.broker.getvalue()
21-
# print('Result cash: {}'.format(cash))
19+
def stop(self):
20+
cash = self.broker.getvalue()
21+
print('Result cash: {}'.format(cash))
22+
23+
def notify_order(self, order):
24+
if order.status in [order.Submitted, order.Accepted]:
25+
return
26+
27+
self.order = None
2228

2329
def next(self):
2430
if self.order:
2531
return
2632

27-
inp = np.asanyarray([self.dataclose[0], self.datavol[0]])
33+
input_data = []
34+
for i in range(7):
35+
input_data.append(self.dataclose[i-6])
36+
input_data.append(self.datavol[i-6])
37+
inp = np.asanyarray(input_data)
2838
inp = np.expand_dims(inp, 0)
2939

3040
predict = self.p.model.predict(inp)[0]
@@ -44,6 +54,15 @@ def next(self):
4454
if predict == 0:
4555
self.order = self.buy()
4656

57+
model = Sequential()
58+
model.add(Dense(128, input_dim=14, activation='relu'))
59+
model.add(Dense(256, activation='relu'))
60+
model.add(Dense(512, activation='relu'))
61+
model.add(Dense(1024, activation='relu'))
62+
model.add(Dense(2, activation='relu'))
63+
64+
model.compile(optimizer='Adam', loss='mse')
65+
4766
data = bt.feeds.GenericCSVData(
4867
dataname='eur_usd_1d.csv',
4968
separator=',',
@@ -59,19 +78,12 @@ def next(self):
5978
openinterest=-1
6079
)
6180

62-
model = Sequential()
63-
model.add(Dense(128, input_dim=2, activation='relu'))
64-
model.add(Dense(1024, activation='relu'))
65-
model.add(Dense(2, activation='relu'))
66-
67-
model.compile(optimizer='Adam', loss='mse')
68-
69-
7081
def get_reward(weights):
7182
model.set_weights(weights)
7283
cerebro = bt.Cerebro()
7384
cerebro.addstrategy(ESStrategy, model=model)
7485
cerebro.adddata(data)
86+
cerebro.broker.setcash(1000)
7587
cerebro.addsizer(bt.sizers.FixedSize, stake=50)
7688

7789
cerebro.run()

0 commit comments

Comments
 (0)