В примере я использую бесконечный цикл - while True
- чтобы работать все время (24 часа в сутки). Он должен получить дату со склада, проверить время в данных и сохранить его где-нибудь (файл или база данных).
В конце концов он может запустить закомментированную часть кода, чтобы остановить его после 9:35, а затем вы должны запустить его следующимдень до 9:30. Вы можете запустить его вручную или использовать какой-нибудь планировщик для запуска, т.е. cronjob
в Linux.
import datetime
# --- functions ---
def get_from_stock():
# TODO: get current data from stock
return {
'ohlc': {'close': 75.95, 'high': 83.5, 'low': 64.6, 'open':75.95},
'last_price': 75.0,
'timestamp': datetime.datetime(2019, 11, 2, 11, 20, 15),
}
# --- main ---
start_time = datetime.time(9, 30)
end_time = datetime.time(9, 35)
while True:
data = get_from_stock()
data_time = data['timestamp'].time()
if start_time <= data_time <= end_time:
print('Time:', data_time)
print('High:', data['ohlc']['high'])
print('Low:', data['ohlc']['low'])
print('TODO: save it')
#if data_time > end_time:
# print('Time:', data_time)
# print('It is end for today. Run again tomorrow before 9:00 AM.')
# break