Advertisement
cjc5013

Time Stop

Oct 6th, 2019
160
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.04 KB | None | 0 0
  1. def initialize(context):  
  2.     schedule_function(trade, date_rules.every_day(), time_rules.market_close(minutes=5))
  3.     schedule_function(time_stop, date_rules.every_day(), time_rules.market_close(minutes=10))
  4.    
  5.     context.spy = sid(8554)
  6.     context.counter = 0
  7.     context.number_of_days_for_time_stop = 5 #We sell 5 days after we enter
  8.            
  9. def trade(context, data):
  10.     #This function simply buys SPY  
  11.     order_target_percent(context.spy, 1.0)
  12.    
  13. def time_stop(context, data):
  14.     #This function checks if we are long SPY,
  15.     #If so it adds "1" to context.counter
  16.     if context.portfolio.positions[context.spy].amount > 0:
  17.         context.counter = context.counter + 1
  18.         print(context.counter)
  19.        
  20.     #When context.counter equals "context.number_of_days_for_time_stop" we sell
  21.     #Sets context.counter back to 0
  22.     if context.counter == context.number_of_days_for_time_stop:
  23.         order_target_percent(context.spy, 0.0)
  24.         print('we are selling after X days')
  25.         context.counter = 0
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement