由于缺乏明确性,我重新编辑了我的问题。下面的代码获取一个随机数,然后检查它是否是一个新高,如果是一个则记录它。然后经过一定的延迟(1 分钟)后,它再次执行相同的操作,从上一周期的最后一个数字开始。
我想为不同的频率运行相同的,所以我会有很多时间段,如果我在函数中重写下面的代码,我可以获得 agregateinfrequency(5min),它只会返回下面的打印(或列表)
希望它现在更有意义。
for random_number, current_time,i in generator():
previous_last_price = mynumber
mynumber = mynumber + (random_number*0.0001)
#print (random_number*0.01)
if mynumber >high_price: #new one
high_price = mynumber
if mynumber <low_price: #new one
low_price = mynumber
last_price = mynumber
if keyfunc(current_time,1) != previous_reftime1min: #new one
print mynumber,",",i, current_time,",", keyfunc(current_time,1),",", previous_reftime1min,",", open_price,",", high_price,",", low_price,",", last_price
wrtr.writerow([mynumber, i,current_time, keyfunc(current_time,1), previous_reftime1min, open_price, high_price, low_price, last_price])
myfile.flush() # whenever you want, and/or
open_price = previous_last_price
high_price = mynumber
low_price = mynumber
last_price = mynumber
previous_reftime1min = keyfunc(current_time,1)