Python期货K线数据处理_常用技术指标计算
·
免责声明:本文基于个人使用体验,与任何厂商无商业关系。内容仅供技术交流参考,不构成投资建议。
一、前言
K线数据处理是量化策略的基础。均线、MACD、RSI等技术指标的计算方法需要熟练掌握。做了二十年期货交易,我常用天勤量化处理K线数据。
今天分享Python期货K线数据处理和常用技术指标的计算方法。
二、K线数据获取
from tqsdk import TqApi, TqAuth
api = TqApi(auth=TqAuth("账户", "密码"))
klines = api.get_kline_serial("SHFE.rb2510", 300, 500)
# K线字段:open, high, low, close, volume, open_interest, datetime
print(klines.columns)
print(klines.tail())
api.close()
三、常用技术指标
1. 均线MA
from tqsdk.ta import MA
ma5 = MA(klines, 5)
ma20 = MA(klines, 20)
klines['ma5'] = ma5.ma
klines['ma20'] = ma20.ma
2. MACD
from tqsdk.ta import MACD
macd = MACD(klines, 12, 26, 9)
klines['dif'] = macd.dif
klines['dea'] = macd.dea
klines['bar'] = macd.bar
3. RSI
from tqsdk.ta import RSI
rsi = RSI(klines, 14)
klines['rsi'] = rsi.rsi
4. 布林带
from tqsdk.ta import BOLL
boll = BOLL(klines, 26)
klines['boll_upper'] = boll.top
klines['boll_mid'] = boll.mid
klines['boll_lower'] = boll.bottom
四、完整示例
from tqsdk import TqApi, TqAuth, TqBacktest
from tqsdk.ta import MA, MACD, RSI
from datetime import date
api = TqApi(backtest=TqBacktest(start_dt=date(2024,1,1), end_dt=date(2024,6,30)), auth=TqAuth("账户","密码"))
klines = api.get_kline_serial("SHFE.rb2510", 300, 200)
while True:
api.wait_update()
if api.is_changing(klines) and len(klines) >= 50:
ma5 = MA(klines, 5).ma.iloc[-1]
ma20 = MA(klines, 20).ma.iloc[-1]
rsi = RSI(klines, 14).rsi.iloc[-1]
close = klines['close'].iloc[-1]
if close > ma20 and ma5 > ma20 and rsi < 70:
# 策略逻辑
pass
api.close()
五、总结
Python期货K线数据处理,天勤量化提供完整的ta库,MA、MACD、RSI、BOLL等指标可直接调用,与K线数据无缝衔接。建议先熟悉基础指标,再组合使用。
量化交易有风险,指标只是工具,策略逻辑才是核心。
声明:本文基于个人学习经验整理,仅供技术交流参考,不构成任何投资建议。
更多推荐



所有评论(0)