Comments (8)
Hi, sorry for the late response
this project is quote driven (as opposed to clock driven)
or in other words, currently the only events for live trading are quotes (which could basically be even more than once per second)
I will try to look in to it soon, and see what could be done (but probably, we could not do daily events because they do not exist in the data providers - alpaca or polygon. so minute events is probably a possibility)
you have 2 choices:
- you check inside your code "did I execute today?" and mark it in a variable with today's date. if you already did what you want for today - don't do nothing new (so next() will be called many times, but will take action once per day)
- look at pylivetrader which is another project by alpaca which is clock driven (so you could
handle_data()
which is the equivalent tonext()
every minute/day). but this means learning a new environment and writing a new algo.
so you should probably take the first approach.
hope that helps.
from alpaca-backtrader-api.
@shlomikushchi wouldn't a resample like this also work?
datakwargs = dict(
historical=False,
backfill_start=False,
)
data = DataFactory(dataname="SPY", **datakwargs)
cerebro.resampledata(data, timeframe=bt.TimeFrame.Days)
from alpaca-backtrader-api.
it will probably work better when the samples will be aggs (minute bars) and not quotes
from alpaca-backtrader-api.
@shlomikushchi my understanding is that tick data should work fine with bar2edge being set to True, which by default it is. Per resamplerfilter.py:
- bar2edge (default: True)
replays using time boundaries as the target of the closed bar. For
example with a "ticks -> 5 seconds" the resulting 5 seconds bars will
be aligned to xx:00, xx:05, xx:10 ...
But obviously you are more familiar with these things than I am.
from alpaca-backtrader-api.
thanks I will look in to it. @daquilnp tell us if you have tried it
from alpaca-backtrader-api.
I will try it soon and let you know. Is there somewhere in the documentation about the project being quote driven? I grabbed most of my live trading code from the samples and expected it to be clock driven.
from alpaca-backtrader-api.
I checked this, and as I thought the resampledata()
doesn't resample the data to different timeframe.
I will look into it in later releases
if anyone knows differently, let me know
from alpaca-backtrader-api.
closing due to lack of activity
from alpaca-backtrader-api.
Related Issues (20)
- Not a reliable API
- Informing user about subscription HOT 2
- Documentation for creating new Alpaca is broken. HOT 1
- Trading Calender - Package Issue HOT 3
- Cannot import alpaca-backtrader-api (Python 3.9.9 MacOS) HOT 5
- backtest not going back far enough HOT 2
- Multiple datas has connection limited error?
- alpaca-trade-api uses UTC while `_clear_out_of_market_hours` assumes NY Time. HOT 1
- Alpaca AttributeError: 'Asset' has not attribute 'status'
- Data websocket error with paper trading. Error code = 1002 (protocol error)
- Multiple WebSocket Open or Proxy - for multiple strategies
- Cannot purchase Long and create a trailing stop
- The Default Value for 'stocklike'
- only getting minute data until 12pm EST everyday in historical mode HOT 1
- Multiple datas sample no longer works HOT 1
- alpaca-trade-api-python is being deprecated by alpaca-py HOT 1
- Replay with historical data only retrieve daily bars instead replaying every minute
- module 'finplot' has no attribute 'add_order' HOT 1
- error installing on Windows 11, Python 3.9 HOT 3
- Wrong timezone for DataFactory
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from alpaca-backtrader-api.