최근에는 학업에 입문하고 있고, 기초를 찾지 못하고, 천천히 무언가를 타기 시작합니다.
오늘 우리는 지난 50일 동안 (플랫폼이 OK를 통해 50일만 반복하는 것 같네요) 단편적인 시장 (연속 상승 또는 감소) 의 수치를 통계적으로 측정하는 작은 스크립트를
이 프로젝트의 결과는 다음과 같습니다.
출력 순서는: id
이 있나요?
def main():
k_line = exchange.GetRecords(PERIOD_M1) #设置1分钟K线数据
i1 = 0 #i1 i2分别记录涨、跌次数
i2 = 0
j_c = 0 #用作记录所有持续行情次数总和的变量
for i,k_line_single in enumerate(k_line): #i为记录循环次数 从0开始 k_line_single为单行记录文本
otherStyleTime = time.strftime("%Y--%m--%d %H:%M:%S", time.localtime(k_line_single.Time / 1000))#时间戳转换代码
state_text = "" #重置state_text 避免状态连续继承 状态文本
Duration = "" #重置持续行情次数变量
if k_line_single.High > k_line[i-1].High: #判断最高价高于前一周期最高价的情况
i2 = 0 #重置连续下跌计数变量
if k_line[i-1].High > k_line[i-2].High or k_line[i+1].High > k_line_single.High: #当高于前一周期或后一周期高于此周期价
state_text = "连续上涨UP UP UP!"
i1 += 1 #记录连续上涨次数
elif k_line_single.High < k_line[i-1].High: #判断不为持平状态
i1 = 0
if k_line[i-1].High < k_line[i-2].High or k_line[i+1].High < k_line_single.High:#当前一周期价格低于前前一周期 或 后一周期价格低于当前周期,表示一定是连续下跌
state_text = "连续下跌LOW LOW !"
i2 += 1 #记录连续下跌次数
else:
i1 = 0 #重置连续行情次数
i2 = 0
if state_text == "连续上涨GO GO GO!" or state_text == "连续下跌LOW LOW !": #只有当连续上涨或下跌时 才会打印结果
j_c += 1
Duration = "Duration:",i1 + i2 #连续单边行情持续次数
Log(i+1,"-- Time:",otherStyleTime,"-- High:",k_line_single.High,"-- Low:",k_line_single.Low,"--》",state_text,Duration)
Log("运行完毕。。符合条件的总数为:",j_c)
def main():
k_line = exchange.GetRecords(PERIOD_M1)
state_text = "" #状态文本
i1 = 0
i2 = 0
i3 =0
state_3 = 0 #行情状态 涨=1 跌=2 平=3
j_c = 0 #用作记录所有持续行情次数总和的变量
for i,k_line_single in enumerate(k_line): #i为记录循环次数 从0开始 k_line_single为单行记录文本
timeStamp = k_line_single.Time / 1000 #时间戳转换代码开始
timeArray = time.localtime(timeStamp)
otherStyleTime = time.strftime("%Y--%m--%d %H:%M:%S", timeArray)#时间戳转换代码结束
if k_line_single.High > k_line[i-1].High: #判断最高价高于前一周期最高价的情况
state_text = "价格出现上涨"
i2 = 0
i3 = 0
state_3 = 1
if k_line[i-1].High > k_line[i-2].High or k_line[i+1].High > k_line_single.High: #当高于前一周期或后一周期高于此周期价
state_text = "连续上涨GO GO GO!"
i1 += 1
else:
if k_line_single.High != k_line[i-1].High:
state_text = "价格出现下跌"
i1 = 0
i3 = 0
state_3 = 2
if k_line[i-1].High < k_line[i-2].High or k_line[i+1].High < k_line_single.High:
state_text = "连续下跌LOW LOW !"
i2 += 1
else:
state_text = "价格相比持平"
i1 = 0
i2 = 0
state_3 = 3
if k_line[i-1].High == k_line[i-2].High:# or k_line[i+1].High == k_line_single.High:
state_text = "连续持平PING PING !"
i3 = 0 #不调试持平持续数量了
if state_3 != 3: #不打印持平的结果
Duration = i1 + i2 + i3
if Duration == 0:
Duration = ""
else:
Duration = "Duration:",i1 + i2 + i3
if i1 != 0 or i2 != 0: #只有当连续上涨或下跌时 才会打印结果
j_c += 1
Log(i+1,"-- Time:",otherStyleTime,"-- High:",k_line_single.High,"-- Low:",k_line_single.Low,"--》",state_text,Duration)
Log("运行完毕。。符合条件的总数为:",j_c)
제로이 포럼은 마크다운 형식으로 되어 있습니다.
bb죄송합니다. 제가 보낸 코드는 반만 풀었습니다.
qq89520감사합니다.
bb감사합니다. 감사합니다.