260 浏览
0

按照官网的说明添加了自定义指标线:

from tqsdk import TqApi, TqAuth
from tqsdk.ta import KDJ
 api = TqApi(web_gui=True, auth=TqAuth("快期账户", "账户密码"))
 SYMBOL = "SHFE.rb2105"
klines = api.get_kline_serial(SYMBOL, 60 * 60 * 24, data_length=100)  # 获取100天的K线数据
 # 计算KD指标
kdj = KDJ(klines, N=9, M1=3, M2=3)
 # 添加KD指标的20、50、80线
klines["kd_20"] = 20
klines["kd_20.color"] = "red"
klines["kd_20.width"] = 1
klines["kd_20.style"] = "dash"
 klines["kd_50"] = 50
klines["kd_50.color"] = "green"
klines["kd_50.width"] = 1
klines["kd_50.style"] = "dash"
 klines["kd_80"] = 80
klines["kd_80.color"] = "blue"
klines["kd_80.width"] = 1
klines["kd_80.style"] = "dash"
 while True:
    api.wait_update()
    if api.is_changing(klines):
        print("K线数据已更新")

回测显示正常,但是实盘仅从当天开盘后才显示,历史数据看不到——如果是日线,那每天就只显示一个点?那画线还有什么意义?能不能实盘时,把指标线画完整,只需要过去历史的一段即可,保持指标线的连续可读性就好。现在是完全没法检验测试和实盘的信号是否一致,根本看不了指标线!

786702309 已回答的问题 2025年1月9日
0

给K线的绘图一般在循环内,从代码上看是只给了一根K线赋值,可以看看修复后还有没有这个问题

786702309 已回答的问题 2025年1月9日