alpacahq / Momentum-Trading-Example

An example algorithm for a momentum-based day trading strategy.
656 stars 218 forks source link

Infinite while loop #12

Open DanOKeefe opened 4 years ago

DanOKeefe commented 4 years ago

If the condition in this while loop ever evaluates to True, it will always be True.

current_dt and market_open never change wthin the while loop, which means that since_market_open will never change within the while loop. This means

since_market_open.seconds // 60 <= 14

will never evaluate to False if it is intially True

https://github.com/alpacahq/Momentum-Trading-Example/blob/be4352838eebdd2d124eedd341e31fbae8774f3d/algo.py#L392-L394

I believe it should be:

while since_market_open.seconds // 60 <= 14:
        time.sleep(1)
        current_dt = datetime.today().astimezone(nyc)
        since_market_open = current_dt - market_open
nickvertucci commented 3 years ago

Hey Dan,

Found these changes although the code has been updated since.

Were you able to get it working? Mine seems to be just stuck on watching symbols...

solaress1980 commented 3 years ago

I think so too @DanOKeefe. I also think it should wait until market opens to check this 15 minutes elapsed logic so that the program does not run before 9am.