pip install zipline
zipline ingest -b quantopian-quandl
python
from zipline.api import order_target_percent, symbol
def initialize(context):
context.asset = symbol('AAPL')
def handle_data(context, data):
ma5 = data.history(context.asset, 'price', bar_count=5, frequency='1d').mean()
ma20 = data.history(context.asset, 'price', bar_count=20, frequency='1d').mean()
if ma5 > ma20:
order_target_percent(context.asset, 1.0)
elif ma5 < ma20:
order_target_percent(context.asset, 0.0)
python
from zipline import run_algorithm
from datetime import datetime
def initialize(context):
...
def handle_data(context, data):
...
if __name__ == '__main__':
start_date = datetime(2020, 1, 1)
end_date = datetime(2020, 12, 31)
capital_base = 100000
run_algorithm(start=start_date, end=end_date, initialize=initialize, capital_base=capital_base, handle_data=handle_data)
python your_script.py