请教老师一个python的问题
klinedata5 = GetHisDataByField2( code,[ "high", "low" ], bar_type = BarType.Min5, count = 101 )
klinedata15= GetHisDataByField2( code,[ "high", "low" ], bar_type = BarType.Min15, count = 101 )
#取最近50根K线
rangehigh = max( klinedata15[0][:-1] ) #取区间高点
rangelow = min( klinedata15[1][:-1] ) #取区间低点
print("区间高点"+str(rangehigh))
print("区间低点"+str(rangelow))
#打印K线数据,如最新一根K线的最高价
if len(klinedata15) > 0 and len(klinedata5)> 0:
lasthigh15 = klinedata15.rangehigh,klinedata15.rangelow
lasthigh5 = klinedata5.rangehigh,klinedata5.rangelow
log.info("最新15分钟K线的最高价: " + str(lasthigh15))
log.info("最新5分钟K线的最高价: " + str(lasthigh5))
点
这是多周期的,怎样写才正确?回测才正常?
下面面这两句代码出错了,怎样才能引用到K线5分钟图,和15分钟图
#取最近50根K线
rangehigh = max( klinedata15[0][:-1] ) #取区间高点
rangelow = min( klinedata15[1][:-1] ) #取区间低
我用5分钟K线图区间高点与区间低点做交易,引用15分钟K线图的区间高点与区间低
自己输出下数据就知道了,你列表的切片切错了。第一个维度是横轴,表示时间序列,第二个维度才是高低特征

此主题相关图片如下:1580713655(1).jpg
import time
import os
import csv
import numpy
import talib as ta
def defe_tradihg(context):
print('?a?ì?°')
def handle_bar(context):
bar_close=history_bars_date('SQRB00','20180901','20180910','1d',["high","low"])
print(bar_close)
print(bar_close(0)
def after_trading(context):
pas
> 开始编译 <MyPython3> ......
>
> 编译错误 : SyntaxError
> line : 15
> 错误信息 : invalid syntax (MyPython3_jzt.py, line 15)
打不出了
def after_trading(context):
pass
你漏了一个s
bar_close=history_bars_date('SQRB00','20180901','20180910','1d',"high")
print(bar_close)
print(bar_close[:-1])
你如果对多维数组不是很好处理,直接就获取一个列表,这个取出来的数据直接再用max就行了
[此贴子已经被作者于2020/2/4 14:13:20编辑过]
我说的是5分钟周期,怎样取15分钟周期的,怎样定义区间最高价,与区间最低价