For code/output blocks: Use ``` (aka backtick or grave accent) in a single line before and after the block. See: http://commonmark.org/help/
Bug resampling oandav20 from 15m to 4h
-
I'm using oandav20 and resampling from 15m up to 4h and the 1D. The problem is in 4h chart data I see non-aligned bars and it looks like the time axis is broken:
I've tried various combinations of the bar2edge and rightedge and adjbartime flags but still has the problem. I've also tried shifting the sessionstart but the daily chart needs this to be at 23 (aligning with broker time).
When I search through the data dump (using the writer) I see extra bars coming out of the resampling aligning to the yellow arrows:
2020-05-14 00:00:00 2020-05-14 04:00:00 2020-05-14 08:00:00 2020-05-14 12:00:00 2020-05-14 13:45:00. <-- what? 2020-05-14 16:00:00 2020-05-14 20:00:00 ... 2020-05-19 04:00:00 2020-05-19 08:00:00 2020-05-19 11:15:00 <-- what? 2020-05-19 12:00:00
any pointer appreciated, I've been a coder for 15 years so hit me with the hardcore detail if needed
Here's my setup, if this is of help. Cheers
datakwargs = dict( timeframe=bt.TimeFrame.Minutes, compression=15, stream_timeout=60, historical=args.historical, fromdate=fromdate, tz=args.timezone, backfill_start=True, backfill=True, sessionstart=datetime.time(23, 00), #oanda uses singapore time so 23 in BST. sessionend=datetime.time(23, 00) ) rekwargs4h = dict( timeframe=bt.TimeFrame.Minutes, compression=240, bar2edge=False, adjbartime=False, rightedge=False, takelate=False ) rekwargs1d = dict( timeframe=bt.TimeFrame.Days, compression=1, bar2edge=False, adjbartime=False, rightedge=False, takelate=False ) #Loop through the list adding to cerebro. for i in range(len(datalist)): data = DataFactory(dataname=datalist[i], **datakwargs) # enabling this seems to break daily graph cerebro.resampledata(data, name=datalist[i], timeframe=datakwargs['timeframe'], compression=datakwargs['compression']) cerebro.resampledata(data, name=datalist[i], **rekwargs4h) # day cerebro.resampledata(data, name=datalist[i], **rekwargs1d) config = dict()
-
-