Fix candle ranges in backtesting test
This commit is contained in:
		| @@ -54,4 +54,10 @@ def _build_backtest_dataframe(data): | ||||
|         frame[column] = frame[column].astype('float64') | ||||
|     if 'buy_tag' not in columns: | ||||
|         frame['buy_tag'] = None | ||||
|  | ||||
|     # Ensure all candles make kindof sense | ||||
|     assert all(frame['low'] <= frame['close']) | ||||
|     assert all(frame['low'] <= frame['open']) | ||||
|     assert all(frame['high'] >= frame['close']) | ||||
|     assert all(frame['high'] >= frame['open']) | ||||
|     return frame | ||||
|   | ||||
| @@ -18,8 +18,8 @@ tc0 = BTContainer(data=[ | ||||
|     [0, 5000, 5025, 4975, 4987, 6172, 1, 0], | ||||
|     [1, 5000, 5025, 4975, 4987, 6172, 0, 0],  # enter trade (signal on last candle) | ||||
|     [2, 4987, 5012, 4986, 4986, 6172, 0, 0],  # exit with stoploss hit | ||||
|     [3, 5010, 5000, 4980, 5010, 6172, 0, 1], | ||||
|     [4, 5010, 4987, 4977, 4995, 6172, 0, 0], | ||||
|     [3, 5010, 5010, 4980, 5010, 6172, 0, 1], | ||||
|     [4, 5010, 5011, 4977, 4995, 6172, 0, 0], | ||||
|     [5, 4995, 4995, 4950, 4950, 6172, 0, 0]], | ||||
|     stop_loss=-0.01, roi={"0": 1}, profit_perc=0.002, use_sell_signal=True, | ||||
|     trades=[BTrade(sell_reason=SellType.SELL_SIGNAL, open_tick=1, close_tick=4)] | ||||
| @@ -32,8 +32,8 @@ tc1 = BTContainer(data=[ | ||||
|     [0, 5000, 5025, 4975, 4987, 6172, 1, 0], | ||||
|     [1, 5000, 5025, 4975, 4987, 6172, 0, 0],  # enter trade (signal on last candle) | ||||
|     [2, 4987, 5012, 4600, 4600, 6172, 0, 0],  # exit with stoploss hit | ||||
|     [3, 4975, 5000, 4977, 4977, 6172, 0, 0], | ||||
|     [4, 4977, 4987, 4977, 4995, 6172, 0, 0], | ||||
|     [3, 4975, 5000, 4975, 4977, 6172, 0, 0], | ||||
|     [4, 4977, 4995, 4977, 4995, 6172, 0, 0], | ||||
|     [5, 4995, 4995, 4950, 4950, 6172, 0, 0]], | ||||
|     stop_loss=-0.01, roi={"0": 1}, profit_perc=-0.01, | ||||
|     trades=[BTrade(sell_reason=SellType.STOP_LOSS, open_tick=1, close_tick=2)] | ||||
| @@ -99,7 +99,7 @@ tc5 = BTContainer(data=[ | ||||
|     [1, 5000, 5025, 4980, 4987, 6172, 0, 0],  # enter trade (signal on last candle) | ||||
|     [2, 4987, 5025, 4975, 4987, 6172, 0, 0], | ||||
|     [3, 4975, 6000, 4975, 6000, 6172, 0, 0],  # ROI | ||||
|     [4, 4962, 4987, 4972, 4972, 6172, 0, 0], | ||||
|     [4, 4962, 4987, 4962, 4972, 6172, 0, 0], | ||||
|     [5, 4950, 4975, 4925, 4950, 6172, 0, 0]], | ||||
|     stop_loss=-0.01, roi={"0": 0.03}, profit_perc=0.03, | ||||
|     trades=[BTrade(sell_reason=SellType.ROI, open_tick=1, close_tick=3)] | ||||
| @@ -167,7 +167,7 @@ tc9 = BTContainer(data=[ | ||||
| tc10 = BTContainer(data=[ | ||||
|     # D   O     H     L     C    V    B  S | ||||
|     [0, 5000, 5050, 4950, 5000, 6172, 1, 0], | ||||
|     [1, 5000, 5050, 4950, 5100, 6172, 0, 0], | ||||
|     [1, 5000, 5100, 4950, 5100, 6172, 0, 0], | ||||
|     [2, 5100, 5251, 5100, 5100, 6172, 0, 0], | ||||
|     [3, 4850, 5050, 4650, 4750, 6172, 0, 0], | ||||
|     [4, 4750, 4950, 4350, 4750, 6172, 0, 0]], | ||||
| @@ -183,7 +183,7 @@ tc10 = BTContainer(data=[ | ||||
| tc11 = BTContainer(data=[ | ||||
|     # D   O     H     L     C    V    B  S | ||||
|     [0, 5000, 5050, 4950, 5000, 6172, 1, 0], | ||||
|     [1, 5000, 5050, 4950, 5100, 6172, 0, 0], | ||||
|     [1, 5000, 5100, 4950, 5100, 6172, 0, 0], | ||||
|     [2, 5100, 5251, 5100, 5100, 6172, 0, 0], | ||||
|     [3, 5000, 5150, 4650, 4750, 6172, 0, 0], | ||||
|     [4, 4750, 4950, 4350, 4750, 6172, 0, 0]], | ||||
| @@ -199,7 +199,7 @@ tc11 = BTContainer(data=[ | ||||
| tc12 = BTContainer(data=[ | ||||
|     # D   O     H     L     C    V    B  S | ||||
|     [0, 5000, 5050, 4950, 5000, 6172, 1, 0], | ||||
|     [1, 5000, 5050, 4950, 5100, 6172, 0, 0], | ||||
|     [1, 5000, 5100, 4950, 5100, 6172, 0, 0], | ||||
|     [2, 5100, 5251, 4650, 5100, 6172, 0, 0], | ||||
|     [3, 4850, 5050, 4650, 4750, 6172, 0, 0], | ||||
|     [4, 4750, 4950, 4350, 4750, 6172, 0, 0]], | ||||
| @@ -307,7 +307,7 @@ tc19 = BTContainer(data=[ | ||||
|     [2, 4987, 5300, 4950, 5200, 6172, 0, 0], | ||||
|     [3, 5000, 5300, 4940, 4962, 6172, 0, 0],  # Sell on ROI | ||||
|     [4, 4962, 4987, 4950, 4950, 6172, 0, 0], | ||||
|     [5, 4550, 4975, 4925, 4950, 6172, 0, 0]], | ||||
|     [5, 4550, 4975, 4550, 4950, 6172, 0, 0]], | ||||
|     stop_loss=-0.10, roi={"0": 0.10, "120": 0.01}, profit_perc=0.01, | ||||
|     trades=[BTrade(sell_reason=SellType.ROI, open_tick=1, close_tick=3)] | ||||
| ) | ||||
| @@ -322,7 +322,7 @@ tc20 = BTContainer(data=[ | ||||
|     [2, 4987, 5300, 4950, 5200, 6172, 0, 0], | ||||
|     [3, 5200, 5300, 4940, 4962, 6172, 0, 0],  # Sell on ROI | ||||
|     [4, 4962, 4987, 4950, 4950, 6172, 0, 0], | ||||
|     [5, 4550, 4975, 4925, 4950, 6172, 0, 0]], | ||||
|     [5, 4925, 4975, 4925, 4950, 6172, 0, 0]], | ||||
|     stop_loss=-0.10, roi={"0": 0.10, "119": 0.01}, profit_perc=0.01, | ||||
|     trades=[BTrade(sell_reason=SellType.ROI, open_tick=1, close_tick=3)] | ||||
| ) | ||||
| @@ -334,7 +334,7 @@ tc20 = BTContainer(data=[ | ||||
| tc21 = BTContainer(data=[ | ||||
|     # D   O     H     L     C    V    B  S | ||||
|     [0, 5000, 5050, 4950, 5000, 6172, 1, 0], | ||||
|     [1, 5000, 5050, 4950, 5100, 6172, 0, 0], | ||||
|     [1, 5000, 5100, 4950, 5100, 6172, 0, 0], | ||||
|     [2, 5100, 5251, 4650, 5100, 6172, 0, 0], | ||||
|     [3, 4850, 5050, 4650, 4750, 6172, 0, 0], | ||||
|     [4, 4750, 4950, 4350, 4750, 6172, 0, 0]], | ||||
| @@ -350,7 +350,7 @@ tc21 = BTContainer(data=[ | ||||
| tc22 = BTContainer(data=[ | ||||
|     # D   O     H     L     C    V    B  S | ||||
|     [0, 5000, 5050, 4950, 5000, 6172, 1, 0], | ||||
|     [1, 5000, 5050, 4950, 5100, 6172, 0, 0], | ||||
|     [1, 5000, 5100, 4950, 5100, 6172, 0, 0], | ||||
|     [2, 5100, 5251, 5100, 5100, 6172, 0, 0], | ||||
|     [3, 4850, 5050, 4650, 4750, 6172, 0, 0], | ||||
|     [4, 4750, 4950, 4350, 4750, 6172, 0, 0]], | ||||
| @@ -369,7 +369,7 @@ tc22 = BTContainer(data=[ | ||||
| tc23 = BTContainer(data=[ | ||||
|     # D   O     H     L     C    V    B  S | ||||
|     [0, 5000, 5050, 4950, 5000, 6172, 1, 0], | ||||
|     [1, 5000, 5050, 4950, 5100, 6172, 0, 0], | ||||
|     [1, 5000, 5100, 4950, 5100, 6172, 0, 0], | ||||
|     [2, 5100, 5251, 5100, 5100, 6172, 0, 0], | ||||
|     [3, 4850, 5251, 4650, 4750, 6172, 0, 0], | ||||
|     [4, 4750, 4950, 4350, 4750, 6172, 0, 0]], | ||||
| @@ -387,8 +387,8 @@ tc24 = BTContainer(data=[ | ||||
|     [0, 5000, 5025, 4975, 4987, 6172, 1, 0], | ||||
|     [1, 5000, 5025, 4975, 4987, 6172, 0, 0],  # enter trade (signal on last candle) | ||||
|     [2, 4987, 5012, 4986, 4986, 6172, 0, 0], | ||||
|     [3, 5010, 5000, 4855, 5010, 6172, 0, 1],  # Triggers stoploss + sellsignal | ||||
|     [4, 5010, 4987, 4977, 4995, 6172, 0, 0], | ||||
|     [3, 5010, 5010, 4855, 5010, 6172, 0, 1],  # Triggers stoploss + sellsignal | ||||
|     [4, 5010, 5010, 4977, 4995, 6172, 0, 0], | ||||
|     [5, 4995, 4995, 4950, 4950, 6172, 0, 0]], | ||||
|     stop_loss=-0.01, roi={"0": 1}, profit_perc=-0.01, use_sell_signal=True, | ||||
|     trades=[BTrade(sell_reason=SellType.STOP_LOSS, open_tick=1, close_tick=3)] | ||||
| @@ -402,8 +402,8 @@ tc25 = BTContainer(data=[ | ||||
|     [0, 5000, 5025, 4975, 4987, 6172, 1, 0], | ||||
|     [1, 5000, 5025, 4975, 4987, 6172, 0, 0],  # enter trade (signal on last candle) | ||||
|     [2, 4987, 5012, 4986, 4986, 6172, 0, 0], | ||||
|     [3, 5010, 5000, 4986, 5010, 6172, 0, 1], | ||||
|     [4, 5010, 4987, 4855, 4995, 6172, 0, 0],  # Triggers stoploss + sellsignal acted on | ||||
|     [3, 5010, 5010, 4986, 5010, 6172, 0, 1], | ||||
|     [4, 5010, 5010, 4855, 4995, 6172, 0, 0],  # Triggers stoploss + sellsignal acted on | ||||
|     [5, 4995, 4995, 4950, 4950, 6172, 0, 0]], | ||||
|     stop_loss=-0.01, roi={"0": 1}, profit_perc=0.002, use_sell_signal=True, | ||||
|     trades=[BTrade(sell_reason=SellType.SELL_SIGNAL, open_tick=1, close_tick=4)] | ||||
| @@ -418,7 +418,7 @@ tc26 = BTContainer(data=[ | ||||
|     [1, 5000, 5025, 4975, 4987, 6172, 0, 0],  # enter trade (signal on last candle) | ||||
|     [2, 4987, 5012, 4986, 4986, 6172, 0, 0], | ||||
|     [3, 5010, 5251, 4986, 5010, 6172, 0, 1],  # Triggers ROI, sell-signal | ||||
|     [4, 5010, 4987, 4855, 4995, 6172, 0, 0], | ||||
|     [4, 5010, 5010, 4855, 4995, 6172, 0, 0], | ||||
|     [5, 4995, 4995, 4950, 4950, 6172, 0, 0]], | ||||
|     stop_loss=-0.10, roi={"0": 0.05}, profit_perc=0.05, use_sell_signal=True, | ||||
|     trades=[BTrade(sell_reason=SellType.ROI, open_tick=1, close_tick=3)] | ||||
| @@ -447,7 +447,7 @@ tc27 = BTContainer(data=[ | ||||
| tc28 = BTContainer(data=[ | ||||
|     # D   O     H     L     C    V    B  S | ||||
|     [0, 5000, 5050, 4950, 5000, 6172, 1, 0], | ||||
|     [1, 5000, 5050, 4950, 5100, 6172, 0, 0], | ||||
|     [1, 5000, 5100, 4950, 5100, 6172, 0, 0], | ||||
|     [2, 5100, 5251, 5100, 5100, 6172, 0, 0], | ||||
|     [3, 4850, 5050, 4650, 4750, 6172, 0, 0], | ||||
|     [4, 4750, 4950, 4350, 4750, 6172, 0, 0]], | ||||
|   | ||||
		Reference in New Issue
	
	Block a user