This can also help you in IDE
# Quick ADV_10 Equally Weighted Order Optimal Portfolio
from quantopian.pipeline import Pipeline, factors, filters, classifiers
from quantopian.algorithm import attach_pipeline, pipeline_output
import quantopian.optimize as opt
# ----------------------------------------------------------------
STK_SET, SIZE, ADV, LEV = filters.QTradableStocksUS(), 10, 126, 1.0
# ----------------------------------------------------------------
def initialize(context):
schedule_function(trade, date_rules.week_end(), time_rules.market_open())
adv_top = factors.AverageDollarVolume(window_length = ADV, mask = STK_SET).rank().top(SIZE)
attach_pipeline(Pipeline(screen = adv_top), 'my_pipe')
def trade(context, data):
stocks = pipeline_output('my_pipe').assign(wt = LEV/len(pipeline_output('my_pipe').index))
order_optimal_portfolio(objective = opt.TargetWeights(stocks.wt),constraints=[opt.MaxGrossExposure(LEV)])
record(leverage = context.account.leverage, num_positions = len(context.portfolio.positions))
print stocks