参考文件 – 信易科技 https://www.shinnytech.com 专业的期货/期权/衍生品相关软件系统开发商 Thu, 03 Apr 2025 06:19:08 +0000 zh-CN hourly 1 https://wordpress.org/?v=6.2.8 https://www.shinnytech.com/wp-content/uploads/cropped-信易-0-32x32.png 参考文件 – 信易科技 https://www.shinnytech.com 32 32 天勤量化智能机器人上线! https://www.shinnytech.com/blog/tqsdk_llm/ Thu, 15 Aug 2024 07:47:38 +0000 https://www.shinnytech.com/?p=28608 在使用天勤的过程中用户总会有各种各样的问题,当用户是初学者时,他们可能会考虑 天勤量化能实现哪些功能 实现这个 […]

天勤量化智能机器人上线!最先出现在信易科技

]]>
在使用天勤的过程中用户总会有各种各样的问题,当用户是初学者时,他们可能会考虑

  • 天勤量化能实现哪些功能
  • 实现这个功能的大概代码格式是什么样
  • 文档中关于某些函数的具体参数是什么意思

 

当用户在实际运行的过程中时,他们可能会遇到

  • 遇到天勤或者python的报错,该怎么解决
  • 策略代码逻辑的优化该如何
  • 具体某个功能天勤如何实现

 

这些都会成为用户使用天勤量化过程中的障碍

当我们看到人工智能模型大行其道时,我们可能会想,我们能否也有一个自己的机器人助手,了解天勤的运行机制,能回答我们关于天勤的各种问题呢?

现在我们做到了,通过和国内的大语言模型结合,我们针对天勤量化,提供了一个专门的智能机器人来尝试回答用户关于天勤的各种问题

点击即可免费拥有这样的机器人 https://udify.app/chat/im02prcHNEOVbPAx

功能演示

让我们来看看这个机器人能解决哪些问题

函数原理讲解

TargetposTask是天勤里面使用频率很高的一个函数,但是很多人并不清楚它具体在怎么工作,让我们来找机器人试一下

 

我们接着再追问

策略/功能实现示例

除了函数原理的讲解以外,它还可以帮助我们直接实现部分代码/策略,供用户参考

策略参考示例

报错信息排查

最后编程中遇到的一些常见报错我们也可以尝试让它来帮忙解决

相信这些演示一定能让你有足够的兴趣来尝试我们这个功能强大且针对 tqsdk 优化后的机器人了

点击这里立刻使用吧~https://udify.app/chat/im02prcHNEOVbPAx

由于大语言模型的特性,因此回答的答案也有可能有错误,请使用时仔细确认问题答案!

天勤量化智能机器人上线!最先出现在信易科技

]]>
天勤量化 2.8.0,支持用户免费回测! https://www.shinnytech.com/blog/tqsdk-free-backtest/ Fri, 06 Aug 2021 01:44:33 +0000 https://www.shinnytech.com/?p=16483 天勤量化回测免费啦!

天勤量化 2.8.0,支持用户免费回测!最先出现在信易科技

]]>

       回测一直以来天勤量化作为特色功能,以实盘几乎不变的代码,不仅支持期货而且支持期权的回测功能和完善的回测报告,受到大家的好评。

       但是回测作为收费功能,并不能让所有免费用户便捷的体验和使用。

在本次天勤量化 2.8.0 的版本变更中,我们很高兴的告诉大家:

       只要你的天勤版本在2.8.0及以上,作为免费用户现在也可以一天进行3次免费回测了!

 

       对于新用户如果有python基础,想要学习天勤量化来进行回测或进行交易也十分方便,下面以一段简单回测代码为例:

from datetime import date
from tqsdk import TqApi, TqAuth, TqBacktest, TargetPosTask
# 在创建 api 实例时传入 TqBacktest 就会进入回测模式,设置web_gui=True开启图形化界面
api = TqApi(backtest=TqBacktest(start_dt=date(2018, 5, 2), end_dt=date(2018, 6, 2)),web_gui=True, auth=TqAuth("信易账户", "账户密码"))
# 获得 m1901 5分钟K线的引用
klines = api.get_kline_serial("DCE.m1901", 5 * 60, data_length=15)
# 创建 m1901 的目标持仓 task,该 task 负责调整 m1901 的仓位到指定的目标仓位
target_pos = TargetPosTask(api, "DCE.m1901")
while True:
    api.wait_update()
    if api.is_changing(klines):
        ma = sum(klines.close.iloc[-15:]) / 15
        print("最新价", klines.close.iloc[-1], "MA", ma)
        if klines.close.iloc[-1] > ma:
            print("最新价大于MA: 目标多头5手")
            # 设置目标持仓为多头5手
            target_pos.set_target_volume(5)
        elif klines.close.iloc[-1] < ma:
            print("最新价小于MA: 目标空仓")
            # 设置目标持仓为空仓
            target_pos.set_target_volume(0)

回测完成之后即可观察详细的回测报告

 

赶快行动起来体验简单但强大,很多功能还免费的天勤量化吧!

天勤量化 2.8.0,支持用户免费回测!最先出现在信易科技

]]>
1.7.0天勤量化正式支持期权模拟交易、实盘交易和回测 https://www.shinnytech.com/blog/tqsdk-option-announcement/ Thu, 26 Mar 2020 09:23:01 +0000 https://www.shinnytech.com/?p=9367 期权这个被誉为金融衍生品上的皇冠,天勤量化现已正式支持!

1.7.0天勤量化正式支持期权模拟交易、实盘交易和回测最先出现在信易科技

]]>
随着2019年期权市场品种先后扩容,沪深300ETF期权、沪深300指数期货期权,加上股指期货逐步松绑,使同学们在风险管理时有了更多、更好的对冲工具,提供了构建更多的策略组合的可能性,很多同学也对期权这个被誉为金融衍生品上的皇冠是跃跃欲试。

期权由于其本身品种计算的复杂性,天然的套利属性,和合约数量众多的特性,我们认为期权程序化交易对比手工交易将会占有更大的优势。

但由于现在大多数仿真环境并不支持期权的量化模拟交易,或者由于量化接口的种种局限,让期权量化的模拟和实盘对于大部分用户来说并不是那么顺利。

因此,天勤量化(TqSdk) 1.7.0版本决定顺势而上!在1.7.0中我们做出了一系列改动,相信能够能带给用户更好的期权量化体验

  1. 正式支持使用tqsdk进行商品期权和股指期权模拟交易
  2. 支持期权的回测功能
  3. 提供期权对应的BS定价公式、隐含波动率、希腊字母等期权相应计算字段

于此同时为了更好的提供不同需求服务给用户,使用TqAccount指定账户交易期权功能,目前只对申请权限的用户开放,想要申请请点击链接


 

1.7.0天勤量化正式支持期权模拟交易、实盘交易和回测最先出现在信易科技

]]>
功能优化:更加便捷、完善的支持多合约K线同时订阅! https://www.shinnytech.com/blog/get-multiple-klines/ Fri, 22 Nov 2019 06:20:50 +0000 https://www.shinnytech.com/?p=7743 更加便捷、完善的支持多合约K线同时订阅!

功能优化:更加便捷、完善的支持多合约K线同时订阅!最先出现在信易科技

]]>
TqSdk 1.2.0版本中,我们希望向大家着重介绍一下 get_kline_serial() 中新增的多合约K线同时订阅功能。

这个时候有同学可能就会问了,我之前版本中也可以分批使用几次get_kline_serial()传输进入不同的合约代码来获取K线,那这个功能有什么具体的好处呢?

具体我们认为有以下两个优点:

第一点,代码更简洁优美

以示例钢厂利润套利策略为例,以前我们订阅螺纹钢,铁矿石,焦炭期货合约行情,我们需要这样去写

klines_rb = api.get_kline_serial(SYMBOL_rb, 86400)
klines_i = api.get_kline_serial(SYMBOL_i, 86400)
klines_j = api.get_kline_serial(SYMBOL_j, 86400)

而现在我们只需要一行代码即可

klines = api.get_kline_serial([SYMBOL_rb,SYMBOL_i,SYMBOL_j], 86400)

然后主合约的字段名为原始K线数据字段,从第一个副合约开始,字段名在原始字段后加数字,如第一个副合约的开盘价为 “open1” , 第二个副合约的收盘价为 “close2″。

第二点,K线是更加严格意义上的时间对齐

举例来说,螺纹钢的夜盘时间是21:00-23:00,焦炭和铁矿石的交易时间是21:00—23:30,如果我们用日线的收盘价做相减那么是正确的日线时间对齐,但是如果我们订阅的是5min K线然后做的相减,就会造成时间差错位比如在23.25分的以下代码,就是螺纹钢在23.00时的收盘价减去23.25min 焦炭和铁矿石的收盘价

index_spread = klines_rb.close - 1.6 * klines_i.close - 0.5 * klines_j.close

在我们更新K线多合约品种后能有效的避免这个问题,它会遵循以下法则:

  • 每条K线都包含了订阅的所有合约数据,即:如果任意一个合约(无论主、副)在某个时刻没有数据(即使其他合约在此时有数据), 则不能对齐,此多合约K线在该时刻那条数据被跳过,现象表现为K线不连续(如主合约有夜盘,而副合约无夜盘,则生成的多合约K线无夜盘时间的数据)。
  • 若设置了较大的序列长度参数,而所有可对齐的数据并没有这么多,则序列前面部分数据为NaN(这与获取单合约K线且数据不足序列长度时情况相似)。
  • 若主合约与副合约的交易时间在所有合约数据中最晚一根K线时间开始往回的 8964*周期 时间段内完全不重合,则无法生成多合约K线,程序会报出获取数据超时异常。

即时间严格对齐,用该价差序列可以更准确提供我们想要的信息

index_spread = klines.close - 1.6 * klines.close1 - 0.5 * klines.close2

同时需要注意的是,目前多合约K线订阅功能暂不支持回测,若在回测时获取多合约K线,程序会报出获取数据超时异常。

 

 

功能优化:更加便捷、完善的支持多合约K线同时订阅!最先出现在信易科技

]]>
期货合约属性大全(仅供参考) https://www.shinnytech.com/blog/symbol-attribute/ Fri, 16 Aug 2019 01:49:17 +0000 https://www.shinnytech.com/?p=5448 期货合约属性大全概览

期货合约属性大全(仅供参考)最先出现在信易科技

]]>
20180918制 连续停板涨跌停幅度 时间 主力合约 合约名 合约乘数 价格变动单位 交易所保证金率 最大市价下单手数 最大限价下单手数 常见主力月 第一个 第二个 第三个 白盘 夜盘 中金所 IF 沪深 300 0.2 15% 10 20 所有月 10% 10% 交易所通知 09:30-15:00 无夜盘 IH 上证 300 0.2 15% 10 20 所有月 10% 10% 交易所通知 09:30-15:00 无夜盘 IC 中证 200 0.2 30% 10 20 所有月 10% 10% 交易所通知 09:30-15:00 无夜盘 TF 债五 10000 0.005 1.2% 30 50 所有月 1.2% 交易所通知 交易所通知 09:15-15:15 无夜盘 T 债十 10000 0.005 2% 30 50 所有月 2% 交易所通知 交易所通知 09:15-15:15 无夜盘 TS 债二 20000 0.005 0.5% 30 50 所有月 0.5% 交易所通知 交易所通知 09:15-15:15 无夜盘 上期所 cu 沪铜 5 10 7% 0 500 所有月 6% 9% 11% 09:00-15:00 21:00-01:00 au 沪金 1000 0.05 5% 0 500 6,12 5% 8% 10% 09:00-15:00 21:00-02:30 ag 沪银 15 1 6% 0 500 6,12 5% 8% 11% 09:00-15:00 21:00-02:30 zn 沪锌 5 5 8% 0 500 所有月 6% 9% 11% 09:00-15:00 21:00-01:00 al 沪铝 5 5 7% 0 500 所有月 6% 9% 11% 09:00-15:00 21:00-01:00 ru 橡胶 10 5 9% 0 500 1,5,9 7% 10% 12% 09:00-15:00 21:00-23:00 rb 螺纹 10 1 9% 0 500 1,5,10 7% 10% 12% 09:00-15:00 21:00-23:00 fu 燃油 10 1 10% 0 500 1,5,9 5% 8% 10% 09:00-15:00 无夜盘 hc 热卷 10 1 8% 0 500 1,5,10 6% 9% 11% 09:00-15:00 21:00-23:00 bu 沥青 10 2 8% 0 500 6,12 6% 9% 11% 09:00-15:00 21:00-23:00 pb 沪铅 5 5 8% 0 500 所有月 6% 9% 11% 09:00-15:00 21:00-01:00 ni 沪镍 1 10 8% 0 500 所有月 6% 9% 11% 09:00-15:00 21:00-01:00 sn 沪锡 1 10 7% 0 500 所有月 6% 9% 11% 09:00-15:00 21:00-01:00 上期能源 sc 原油 1000 0.1 7% 0 500 6,12 5% 8% 11% 09:00-15:00 21:00-02:30 大商所 a 豆一 10 1 7% 1000 1000 1,5,9 5% 8% 10% 09:00-15:00 21:00-23:30 b 豆二 10 1 7% 1000 1000 1,5,9 4% 7% 9% 09:00-15:00 21:00-23:30 c 玉米 10 1 5% 2000 2000 1,5,9 5% 8% 10% 09:00-15:00 21:00-23:30 cs 淀粉 10 1 5% 1000 1000 1,5,9 5% 8% 10% 09:00-15:00 无夜盘 i 铁矿 100 0.5 8% 1000 1000 1,5,9 8% 11% 13% 09:00-15:00 21:00-23:30 j 焦炭 100 0.5 9% 500 500 1,5,9 8% 11% 13% 09:00-15:00 21:00-23:30 jd 鸡蛋 10 1 8% 300 300 1,5,9 5% 8% 10% 09:00-15:00 无夜盘 jm 焦煤 60 0.5 9% 1000 1000 1,5,9 8% 11% 13% 09:00-15:00 21:00-23:30 l 塑料 5 5 7% 1000 1000 1,5,9 5% 8% 10% 09:00-15:00 无夜盘 m 豆粕 10 1 7% 1000 1000 1,5,9 5% 8% 10% 09:00-15:00 21:00-23:30 p 棕榈 10 2 6% 1000 1000 1,5,9 5% 8% 10% 09:00-15:00 21:00-23:30 pp PP 5 1 7% 1000 1000 1,5,9 5% 8% 10% 09:00-15:00 无夜盘 v PVC 5 5 7% 1000 1000 1,5,9 5% 8% 10% 09:00-15:00 无夜盘 y 豆油 10 2 6% 1000 1000 1,5,9 5% 8% 10% 09:00-15:00 21:00-23:30 郑商所 WH 强麦 20 1 20% 200 1000 1,5,9 5% 7% 10% 09:00-15:00 无夜盘 CF 棉花 5 5 7% 200 1000 1,5,9 4% 7% 10% 09:00-15:00 21:00-23:30 CY 棉纱 5 5 5% 200 1000 1,5,9 5% 7% 10% 09:00-15:00 21:00-23:30 SR 白糖 10 1 5% 200 1000 1,5,9 4% 7% 10% 09:00-15:00 21:00-23:30 TA PTA 5 2 6% 200 1000 1,5,9 4% 7% 10% 09:00-15:00 21:00-23:30 OI 菜油 10 1 7% 200 1000 1,5,9 5% 7% 10% 09:00-15:00 21:00-23:30 MA 甲醇 10 1 7% 200 1000 1,5,9 5% 7% 10% 09:00-15:00 21:00-23:30 FG 玻璃 20 1 7% 200 1000 1,5,9 5% 7% 10% 09:00-15:00 21:00-23:30 RM 菜粕 10 1 6% 200 1000 1,5,9 5% 7% 10% 09:00-15:00 21:00-23:30 ZC 郑煤 100 0.2 8% 200 1000 1,5,9 6% 7% 10% 09:00-15:00 21:00-23:30 LR 晚稻 20 1 5% 200 1000 1,5,9 4% 7% 10% 09:00-15:00 无夜盘 SF 硅铁 5 2 7% 200 1000 1,5,9 5% 7% 10% 09:00-15:00 无夜盘 SM 锰硅 5 2 7% 200 1000 1,5,9 6% 7% 10% 09:00-15:00 无夜盘 AP 苹果 10 1 11% 200 1000 1,5,9 5% 7% 10% 09:00-15:00 无夜盘

期货合约属性大全(仅供参考)最先出现在信易科技

]]>
天勤支持的期货公司列表(2025/04/03) https://www.shinnytech.com/blog/tq-support-broker/ Thu, 15 Aug 2019 08:56:14 +0000 https://www.shinnytech.com/?p=5398 天勤量化(TqSdk)支持的期货公司

天勤支持的期货公司列表(2025/04/03)最先出现在信易科技

]]>
免费版

支持免费版实盘交易的期货公司

宏源期货 徽商期货
点击开户

开户咨询:15806690887;0531-89015007

点击开户

开户咨询:0551-62861152; 17856072243

收费版

第一列为能够直接使用的期货公司列表

第二列为可以使用天勤量化,但需要额外跟期货公司的客户经理申请使用的列表

第三列为可以使用天勤量化来进行ETF期权交易的期货公司,但是需配合完成ETF期权开户和程序化申请步骤

可直接使用 申请后才能使用 支持ETF期权
A安粮期货 F方正中期 W五矿经易_ETF
B倍特期货 H弘业期货 N南华期货_ETF
B宝城期货 Y银河期货

Y银河期货_CTP三席

Y银河期货_CTP七

G国泰君安_ETF
B渤海期货 G国联期货 G光大期货_ETF
C创元期货 D东证期货 G国元期货_ETF
C长城期货 G光大期货 H宏源期货_ETF
C长江期货 S申万期货 R瑞达期货_股票期权
D东华期货 H华泰期货 Z中信期货_ETF
D东方汇金 D东航期货
D东海期货 C长安期货
D大地期货 Z中金岭南期货
D大有期货 G国泰君安
D大越期货 X信达期货
D大陆期货 Z紫金天风
F福能期货 D东吴期货
F佛金期货 D东吴期货_苏州
D第一创业 Z中金财富
G冠通期货 Y永安期货
G国信期货 Y云财富期货
G国元期货主席 N南华期货
G国元期货次席 Z中粮期货
G国富期货 Z中信期货
G广州期货 Z招商期货
G国投安信
G国新国证期货
G国海良时
G国盛期货
G国贸期货
G国能东方期货(原上海东方)
G国金期货
G国际期货
G广发期货
G广发期货_CTP2008
G广金期货
G格林大华
G港信期货

G港信期货_农商行CTP

H华创期货
H华宝期货
H华安期货
H华金期货
H华鑫期货
H华闻期货
H华龙期货
H和合期货
H和融期货
H宏源期货

H宏源期货_次席

H徽商期货

H徽商期货_CTP2

H恒力期货
H恒泰期货
H海航期货
H海证期货
H海通期货

H海通期货_11席

H混沌天成
H红塔期货
J建信期货
J江海汇鑫
J金信期货
J金元期货
J津投期货
J金瑞期货
J金石期货
J锦泰期货
L鲁证期货
M民生期货
M迈科期货
N宁证期货
P平安期货
Q前海期货
Q齐盛期货
R瑞奇期货
R瑞达期货
S上海东亚ctp主席
S上海中期
S晟鑫期货
S山西三立
S山金期货

S山金期货_三席

S盛达期货
S神华期货
T通惠期货
T铜冠金源
T天鸿期货

T天鸿期货_次席

W五矿期货
X先融期货

X先融期货_重庆

X先锋期货
X兴业期货
X鑫鼎盛期货
X兴证期货
X新世纪期货
X新湖期货
X新纪元期货
X西南期货
X西部期货
Y一德期货_主席

Y一德期货_次席

Y英大期货
Z中信建投
Z中原期货
Z中天期货
Z中州期货
Z中泰期货_数讯程序化
Z中航期货
Z中融汇信
Z中衍期货
Z中财期货
Z中辉期货
 Z中银期货
Z浙商期货
Z正信期货(原美尔雅期货)

天勤支持的期货公司列表(2025/04/03)最先出现在信易科技

]]>
版本更新记录 https://www.shinnytech.com/blog/tq-release-note/ Fri, 10 May 2019 07:53:43 +0000 https://www.shinnytech.com/?p=2935 天勤量化的历史版本更新信息都在这里

版本更新记录最先出现在信易科技

]]>
2.1.4 (2020/11/26)
  • 增加计算波动率曲面函数,详情参考 VOLATILITY_CURVE()
  • TargetPosTask 支持 price 参数为函数类型,详情参考 TargetPosTask
  • 优化下载数据体验,已下市无数据合约提前退出
  • 修复在复盘情况下会持续重复发送订阅合约请求的问题,可以改善复盘连接成功率
  • 修改优化文档

2.1.3 (2020/11/20)

  • 修复 twap 在某些边界条件下无法下单的 bug
  • 修复 linux 平台下 web_gui 可能因为端口占用无法启动网页
  • DataDownloader.get_data_series() 函数使用可能导致内存泄漏,暂时下线修复

2.1.2 (2020/11/19)

  • 下载数据工具支持默认下载 ticks 五档行情
  • 下载数据工具增加 get_data_series 接口,可以获取 dataframe 格式数据,详情请参考 get_data_series()
  • 优化下载数据体验,无数据合约提前退出
  • 修复 twap 算法可能无法持续下单的 bug
  • web_gui 替换新版 logo
  • web_gui 支持 K 线图放大显示

2.1.1 (2020/11/18)

  • 增加 psutil 依赖包

2.1.0 (2020/11/17)

  • 增加多账户功能,详情请参考 multiaccount
  • 优化日志模块,明确区分屏幕输出、日志文件中的日志格式,并在 TqApi 中提供参数 disable_print,可以禁止 TqApi 在屏幕输出内容,详情请参考 TqApi
  • 修复复盘时 web_gui 时间显示错误
  • 优化测试用例执行流程,支持并行运行测试
  • 修改、优化优化文档

2.0.5 (2020/11/03)

  • 优化:Quote 对象增加若干字段:instrument_name、 exercise_year、exercise_month、last_exercise_datetime、exercise_type、public_float_share_quantity,详情请参考文档 Quote
  • 修改:query_options 接口参数名调整,兼容之前的用法
  • 修复:CFFEX.IO 指数回测可能报错的bug
  • 修复:快期模拟在 web_gui 中优化用户名显示
  • 修复:未设置过 ETF 期权风控规则的账户首次设置风控规则时可能报错
  • 优化文档:增加 query 系列函数返回数据类型的注释

2.0.4 (2020/10/13)

  • 增加 Python 支持版本说明(3.6/3.7/3.8)
  • 修复指数不能正常回测问题
  • 修复 2020/08/03-2020/09/15 时间内下市合约查询失败的问题

2.0.3 (2020/09/23)

2.0.2 (2020/09/18)

  • 2020/10/01 以后,免费版用户不再支持回测,下载数据等功能,点击了解专业版和免费版区别
  • 修改中证 500 的合约名称为 SSE.000905
  • 修改 TqAccount 检查参数类型并提示用户
  • vscode插件版优化部分显示

2.0.1 (2020/09/17)

1.8.3 (2020/07/29)

  • 修复:pandas 的 consolidate 函数调用可能会造成 K 线数据不更新
  • 修复:api.insert_order 没有检查大商所期权不支持市价单
  • 优化用户 import pandas 遇到 ImportError 时问题提示
  • 更新优化文档,增加股票相关示例,更新示例中的期货合约,标注文档中 objs 对象类型说明

1.8.2 (2020/07/07)

  • 增加提供高级委托指令 FAK、FOK,并增加相关文档说明 高级委托指令、示例代码
  • 本地模拟交易 sim 支持 FAK、FOK 交易指令,快期模拟暂不支持
  • 优化登录请求流程
  • 优化测试用例代码,增加关于交易指令的测试用例
  • 完善文档内容

1.8.1 (2020/06/19)

  • 增加 TqKq 账户类型,可以使用统一的快期模拟账户登录,详情点击 模拟交易和论坛
  • 增加支持指数回测
  • 支持 with TqApi() as api 写法
  • quote 对象增加 exchange_id 字段,表示交易所代码
  • 重构 sim 模块代码,便于接入新版行情服务器
  • 修复 settargetpos 回测时,在一个交易时段内最后一根 K 线下单无法成交的 bug
  • 修复回测时某些品种夜盘无法交易的 bug
  • 修复 ticksinfo 函数在 pandas 版本低于 1.0.0 无法正常使用的 bug
  • 优化日志输出,实盘下默认启用日志
  • 更新 logo,整理优化文档,增加股票行情、主连获取主力等文档说明,优化示例代码目录结构
  • 修改、优化测试用例及 CI 流程

1.8.0 (2020/05/12)

  • 股票行情测试版发布,_stock 参数设置为 True 可以连接测试行情服务器,提供股票数据 详细说明请点击查看
  • 增加计算 ticks 开平方向函数(详见: get_ticks_info() )
  • 修复 sim 撤单未检查单号是否可撤
  • 重构代码,优化模块划分
  • 修改测试脚本和测试用例,提高持续集成效率

1.7.0(2020/04/16)

  • 支持期权模拟交易,支持期权回测
  • 增加期权指标的计算公式 (希腊值、隐含波动率、理论价等)
  • 增加TqSim模拟交易成交时间判断 (非交易时间段下的委托单将被判定为错单,以减小模拟帐号与实盘的差距)
  • 增加账户、持仓中的市值字段 (如果交易了期权,则模拟帐号的账户、持仓字段的定义有一些改变(详见: tqsdk.objs.Account ))
  • 修复一个可能导致复盘连接失败的问题
  • 优化示例代码
  • 优化文档 (增加 期权交易 文档内容、增加在 在无人监控环境下执行策略 教程内容、优化文档其他细节)

1.6.3(2020/03/16)

  • 修复vscode 插件中不能登录交易的bug
  • 增加免责声明
  • 增加、完善测试用例
  • 修改文档

1.6.2(2020/02/18)

  • 修改 web_gui 默认显示的 ip 地址为 127.0.0.1
  • 修复 web_gui 不显示成交记录箭头的问题
  • 策略结束后 api 将关闭所有 web 链接
  • 优化对 vscode 的支持
  • 增加 Quote 的 option_class (期权方向)和 product_id (品种代码)字段
  • 优化文档

1.6.1(2020/02/12)

  • 修复 web_gui 不显示成交记录的问题
  • 修复 python3.8 下设置 web_gui 参数无效的问题

1.6.0(2020/02/11)

  • 交易网关升级, 所有用户需升级至 1.6.0 版本以上
  • 修复参数搜索时由于 TargetPosTask 单实例造成的内存泄漏
  • web_gui 参数格式改成 [ip]:port, 允许公网访问
  • 改进 web 界面,增加分时图,优化盘口显示内容,修复相关问题
  • 修改 barlast() 的返回值为 pandas.Series 类型序列
  • 优化回测的成交时间准确性
  • 完善文档内容

1.5.1(2020/01/13)

  • 优化 TqApi 参数 web_gui, 允许指定网页地址和端口(详见: 策略程序图形化界面 )
  • 更新优化 vscode 插件以及web 页面
  • 简化画图函数color的参数
  • 增加 barlast 功能函数(详见: barlast() )
  • 优化多合约k线报错提示及示例
  • 修复 TargetPosTask 进行参数搜索时无法正确执行的bug
  • 修复可能触发的回测结果计算报错的问题
  • 增加测试用例
  • 完善文档内容

1.5.0(2020/01/06)

  • 交易网关升级, 所有用户需升级至 1.5.0 版本以上
  • 支持股票上线准备,增加天勤用户认证
  • TqSim 的 trade_log 改为公开变量
  • 完善文档内容

1.4.0(2019/12/25)

  • 在 TqSdk 中直接支持复盘功能(详见: 策略程序复盘 )
  • 增加回测报告内容(胜率、每手盈亏额比例)
  • 从当前版本开始,不再支持天勤终端合约代码图形显示
  • 修复 web_gui 功能中的部分已知问题
  • 修复在一些情况无法输出回测报告的问题
  • 修复使用 slave/master 多线程模式时的报错问题
  • 修复回测结束前最后一条行情未更新的bug
  • 从 logger 中分离从服务器返回的通知信息(以便单独处理或屏蔽)
  • 修复使用 TargetPoseTask 实例时可能引发的报错
  • 完善文档内容

1.3.2(2019/12/19)

  • 修复在填写了画图的 color 参数时引起的报错
  • 修复在 vscode 插件和天勤终端中不能运行策略的bug
  • 完善文档内容

1.3.1(2019/12/18)

  • 重要更新:支持通过 tqsdk.api.TqApi 内 设置 web_gui=True 参数以实现实盘/回测的图像化支持 , (详见: 策略程序图形化界面 )
  • 增加支持 Python3.8
  • 完善 TqSdk 各公开函数的参数类型标注及函数返回值类型标注
  • 将 api 中除业务数据以外的所有变量私有化
  • 完善测试用例
  • 完善文档内容

1.2.1(2019/12/4)

  • 完善 insert_order() 函数返回的 order 的初始化字段:增加 limit_price、price_type、volume_condition、time_condition 字段
  • 增加 quote 行情数据中的 trading_time、expire_datetime、delivery_month、delivery_year、ins_class 字段
  • 删除 quote 行情数据中的 change、change_percent 字段
  • 修复重复发送K线订阅指令给服务器的bug
  • 修复未订阅行情时回测不能立即结束的bug
  • 完善测试用例
  • 完善文档内容

1.2.0(2019/11/22)

1.1.0(2019/10/15)

1.0.0(2019/09/19)

  • 天勤终端在安装时不再强制安装python或vscode, 可以选择已安装的Python环境和代码编辑器
  • 新增了VsCode天勤开发插件,这个很酷的插件让Linux和Mac的官方可视化有了解决方案,同时也能让用户编辑策略代码更加友好,强烈推荐你们去试一试
  • 修正一些细节问题
  • 修复: 各id生成方式
  • 修复: 重复输出日志
  • 修复: 命令行运行策略文件时,复盘模式下的参数返回值
  • 添加持续集成功能
  • 完善文档内容
  • 增加菲阿里四价策略源码和说明

0.9.18(2019/09/10)

  • 天勤终端中的回测报告增加了一些项目
  • #119, #71, #73, #74: TqSdk修正了断线重连时触发的一系列bug
  • #90: 修正 register_update_notify 以 klines 作为参数输入时报错的bug
  • 修正天勤终端图表切换周期时可能崩溃的bug
  • 修正天勤终端在某些操作系统上启动复盘模式崩溃的bug
  • TqSdk中增加了gui相关示例程序
  • 修正了其它一些细节错误
  • 官网增加了自动扶梯策略说明和源码

0.9.17 (2019/08/27)

  • 改进了天勤与TqSdk间合约信息同步机制。现在天勤中点击策略或回测报告,行情图会自动切换到策略相关合约。
  • 天勤中的模拟交易账号与天勤用户论坛账号合并。现在天勤论坛注册的邮箱地址可以用作天勤模拟交易账号。
  • #112: TqSdk的各函数增加返回类型标注,以支持代码自动补全
  • #114: TqApi中的私有成员变量名按python规范加了前缀下划线,避免在自动补全中出现。
  • #76, #121: 修正了TqApi.copy()创建slave实例工作不正常的bug
  • #115: targetpos说明文档加强
  • #116: 技术指标在天勤中画图的示例程序说明加强
  • 增加了一个Abberation策略说明和源码
  • 修正了其它一些细节错误

0.9.15 (2019/08/14)

  • 天勤软件与 TqSdk 的版本将同步更新,两者的版本号会保持一致,天勤 0.9.15 版内置的 tqsdk 也是 0.9.15 版本
  • 天勤安装包中内置了一份vscode 和完整的 python 3.7.4. 用户安装天勤后即可获得完整开发环境
  • 现在 Python 策略程序总是直接连接交易服务器和行情服务器,交易与行情数据都不再经由天勤转发,即使在天勤中直接运行也是如此
  • #85: TqSdk 增加了对函数调用参数的合法性检查机制
  • 移除了天勤中的团队复盘功能
  • 修正了策略程序在天勤中运行时获取持仓信息出错的bug
  • #99: 修正了策略程序带自定义命令行参数时无法运行的bug
  • #80: 修正了 get_order, get_position 等函数获取全部委托单或持仓时, 获取的dict中包含其它内容的bug
  • #70: 修正了tqsdk将用户绘图数据发往行情服务器导致行情断线的bug
  • ta_func文档大幅度加强
  • 示例程序中涉及持仓手数的地方都由 volume_xxx 修改为 pos_xxx
  • 天勤中的示例程序改为中文文件名
  • 修正了其它一些细节错误

0.9.14 (2019/07/30)

  • 现在模拟交易拥有长期模拟账号,软件退出时不再清空交易记录
  • 策略程序默认获得整个账户持仓信息(以前版本的策略程序启动时总是假定持仓为空)
  • 策略程序取消对pyqt的依赖, 取消参数输入面板, 提升策略启动速度
  • 策略程序绘图和策略交易记录现在合并到同一个K线图, 简化界面布局
  • 简化策略运行管理机制, 不再需要创建运行实例, 而是直接运行策略代码文件
  • 优化了策略运行报告性能
  • 内置的tqsdk版本更新到 0.9.5
  • 修正了天勤安装在有中文或空格的路径下时,策略程序无法正常启动的bug

0.9.13 (2019/06/17)

  • 更新内置 tqsdk 版本, 修正策略运行到休盘时间自动停止的bug
  • 修正部分表格导出CSV文件时内容为空的bug
  • 软件图标改为蓝色小狐狸

0.9.11 (2019/05/10)

  • 策略开发/运行/回测板块放到首页
  • 代码编辑改为双击代码文件弹出编辑窗口. 代码存档时不再弹出提示框
  • 修正策略运行结束, 进程需超时退出的bug
  • 修正回测时print信息没有输出的bug
  • 主菜单栏增加账户资金监控信息
  • 修正策略及实例板块切换时关联组未联动的bug
  • 主菜单栏增加问答社区入口

0.9.10 (2019/05/05)

  • 内置 TqSdk 开发包版本升级到 0.9.2, 修正绘图函数不能正常工作的bug
  • 内嵌 Python 改用 3.7.3 32位版
  • 修正自选报价表在关联组状态下工作异常的bug
  • 修正示例程序 t90.py 的错误

0.9.9 (2019/04/25)

  • 内置 TqSdk 开发包版本升级到 0.9.1, 提供完整的技术指标函数支持
  • 修正策略运行时被自动停止的bug
  • K线图支持全景缩放功能
  • [添加板块] 增加了一批板块
  • 主菜单添加了 [恢复默认配置] 按钮
  • 修正了自定组合页面图表关联错误

0.9.8 (2019/03/28)

  • 现在每个运行中的策略都拥有一个专属行情图窗口, 支持策略程序在这个窗口上任意绘图
  • 技术指标重整, 移除javascript相关内容
  • 加入穿透式监管规范支持
  • 正常运行和复盘功能拆分为两个独立入口
  • 在天勤中运行策略程序时可以指定名称
  • 在天勤中运行策略程序时支持 print
  • 板块最大化和恢复的快捷键由空格改为 Alt + ‘+’
  • 修正高分屏上显示异常的bug
  • 颜色风格清理, 修正了黑色背景下某些颜色异常的bug

0.9.7 (2019/03/05)

  • 增加策略代码编辑、策略回测、策略运行等功能
  • 增加上期所二代行情支持
  • 增加纸浆、乙二醇、苹果品种,修正国债期货分类错误
  • 增加上期所仓单行情
  • 模拟交易初始资金调整为1000万
  • 修正了其它一些bug

0.9.6 (2019/01/11)

  • 实现 团队共享复盘功能
  • 修正板块关联相关的一批bug
  • 修正前一版本交易页面一旦关闭无法再调出的bug
  • 修正tqsdk接入情况下再开始复盘导致tqsdk工作异常的bug
  • 界面做了一些美化
  • 修正了其它一些bug

0.9.5 (2018/12/15)

0.9.5 版本主要优化了页面布局显示相关机制, 包括:

  • 支持 Alt+P 键弹出任意页面, 方便多显示器环境使用
  • 支持 Alt+1 ~ Alt+9 快捷键切换页面
  • 支持 Alt+Space 快捷键最大化当前板块
  • 向页面添加功能板块操作简化
  • 功能板块间联动机制重做, 现在可以通过板块右键菜单快速设置板块联动, 板块联动组在板块右上角显示

还有其它一些修改:

  • 期权报价表增加上期所铜期权
  • [Experiment]增加快速配色机制, 可以简单迅速调整界面亮度和色彩风格
  • 默认配色风格调整为白底黑字
  • 修正了其它一些bug

0.9.0 (2018/09/07)

  • 重构交易模块,使用 open-trade-gateway 作为交易服务器,加入更多业务字段
  • 支持以命令行参数启动
  • 出错后可以发送错误报告
  • 多处错误修正

0.8.0 (2018/02/28)

  • 行情系统合约代码规则变更, 所有合约代码前增加交易所代码, 以点号分隔. 例如原cu1801变更为 SHFE.cu1801
  • 增加期货连续合约和期货品种指数数据
  • 增加模拟交易功能
  • 支持国内期货交易
  • 增加自定义组合及自定义指数功能, 提供自定义组合及自定义指数的报价, 历史行情, 并通过扩展接口实现了自定义组合的一揽子交易
  • 增加多股同列功能
  • 支持K线数据DDE实时同步至Excel
  • 增加K线数据及Tick数据导出至CSV文件功能
  • 允许用户向界面加入功能板块
  • K线图支持跨周期定位与缩放
  • 行情图表上增加委托单及持仓显示及操作
  • K线图增加区间统计功能
  • 支持行情图表空格键最大化及还原
  • 主界面改用ribbon式可伸缩工具条
  • 系统报价表性能优化
  • 增加 Javascript SDK 相关文档
  • Websocket API 文档增加了交易相关内容, 修订了部分错误
  • 增加了一般功能说明及部分使用案例

0.7.0 (2017/09/25)

  • 扩展接口增加了技术指标相关内容
  • 扩展接口文档发布
  • 增加了技术指标公式编辑器,支持自定义技术指标
  • 修正了某些情况下Excel DDE接口工作异常的bug

0.6.1 (2017/09/01)

  • [Bug Fix] 修正板块上按回车导致板块变黑的bug
  • [Bug Fix] 修正了报价表右键菜单“导出表格”无效的bug

0.6.0 (2017/08/01)

  • [New Feature] 增加了历史数据复盘功能

版本更新记录最先出现在信易科技

]]>
Ta-Lib如何安装? https://www.shinnytech.com/blog/ta-lib_installation_instruction/ Mon, 21 Jan 2019 09:43:43 +0000 https://www.shinnytech.com/?p=1613 TaLib 的安装方法

Ta-Lib如何安装?最先出现在信易科技

]]>
首先,TqLib安装是相对较繁琐的,我们觉得在天勤量化(TqSdk)内使用技术指标计算函数即可达到同样功能,并且只需简单一行即可导入,如果感兴趣可以点击查看 天勤量化(TqSdk)

TaLib官网:http://ta-lib.org/

一、TaLib简介

TaLib是一个Python金融指数处理库。包含了很多技术分析里的常用参数指标,例如MA、SMA、WMA、MACD、ATR等。

二、TaLib安装

注:TaLib是一个pyhon库,故在安装TaLib前需要安装Python。

1.        pip安装

(官方安装教程文档:https://ta-lib.github.io/ta-lib-python/install.html )

  • 在命令行下输入命令(在线安装):

pip install Ta-Lib

  • (注意:使用pip安装可能会出现这个问题:
    error: Microsoft Visual C++ 14.0 is required. Get it with “Microsoft Visual C++ Build Tools”: https://visualstudio.microsoft.com/downloads/
    此时就需要手动安装。这个问题在安装其他python第三方包时也可能出现,解决方法与此相同)

2.        手动安装

A. 找到并下载自己需要的对应版本的whl格式文件。
(如:若本机安装是32位的python3.6,则选TA_Lib‑0.4.17‑cp36‑cp36m‑win32.whl下载;
若本机安装的是64位的python2.7,则选择TA_Lib‑0.4.17‑cp27‑cp27m‑win_amd64.whl,其他同理)

下载地址在:
https://www.lfd.uci.edu/~gohlke/pythonlibs/

B. 在命令行中(命令行的打开方式在文章最后的Tips里),进入此whl文件所在的目录,执行命令:

pip install 下载的whl文件名
如:pip install TA_Lib-0.4.17-cp37-cp37m-win_amd64.whl

C. 或不进入所在目录,直接执行命令:

pip install 文件所在的绝对路径+文件名
如:pip install D:\my_packages\ TA_Lib-0.4.17-cp37-cp37m-win_amd64.whl

3.        检测安装成功

在包安装成功后,命令行界面会有“ Successfully installed TA-Lib ”的提示。

也可通过在命令行输入命令“ pip install ta-lib ”进行检测,如果出现“ Requirement already satisfied: ta-lib in …”(”…“为安装此文件的目录),即表示安装成功。

三、TaLib函数介绍

1.        几个指标及其用法演示

注意:talib函数的输入数据需要是Numpy的ndarray 类型,如果数据不是这个类型就需要提前进行类型转换。(“Every function takes the same input, passed as a dictionary of Numpy arrays”)。

在使用tqsdk时,K线及tick序列可以使用to_dataframe()函数将数据序列转化为pandas.DataFrame,即可直接取用其close字段作为talib函数的输入数据了(例如:df_klines=klines.to_dataframe())。

  • SMA (简单移动平均线)(参数1:收盘价序列,参数2:时间周期(均线的计算长度 即 几日均线))

real = SMA(close, timeperiod=30)

例:双均线策略中使用SMA的实例:

https://github.com/shinnytech/tqsdk-python/blob/master/tqsdk/demo/doublema.py

  • ATR(平均真实波幅)
    (参数1:最高价序列,参数2:最低价序列,参数3:收盘价序列,参数4:时间周期)

real = ATR(high, low, close, timeperiod=14)

例:海龟策略中使用ATR的实例:

https://github.com/shinnytech/tqsdk-python/blob/master/tqsdk/demo/turtle.py

  • MACD(异同移动平均线)

macd, macdsignal, macdhist = MACD(close, fastperiod=12, slowperiod=26, signalperiod=9)

  • BBANDS (布林带)

upperband, middleband, lowerband = BBANDS(close, timeperiod=5, nbdevup=2, nbdevdn=2, matype=0)

2.        talib中所有指标函数

A. 按照首字母排序:

官方函数列表:http://ta-lib.org/function.html

B. 按照类型分组(点击超链接进入官方文档查看函数用法):

C. 每组的指标函数:

(可在页面内按 Ctrl+f 键搜索到指标后,点击其所在组别的超链接查看函数的使用方法)

  • 重叠研究
    BBANDS          —          Bollinger Bands (布林带)
    DEMA          —          Double Exponential Moving Average (双指数移动平均线)
    EMA          —          Exponential Moving Average (指数移动平均)
    HT_TRENDLINE          —          Hilbert Transform – Instantaneous Trendline
    KAMA          —          Kaufman Adaptive Moving Average
    MA          —          Moving average (移动平均线)
    MAMA          —          MESA Adaptive Moving Average (自适应移动平均)
    MAVP          —          Moving average with variable period (变周期移动平均)
    MIDPOINT          —          MidPoint over period
    MIDPRICE          —          Midpoint Price over period
    SAR          —          Parabolic SAR
    SAREXT          —          Parabolic SAR – Extended
    SMA          —          Simple Moving Average (简单移动平均线)
    T3          —          Triple Exponential Moving Average (T3)
    TEMA          —          Triple Exponential Moving Average (三重指数移动平均线)
    TRIMA          —          Triangular Moving Average
    WMA          —          Weighted Moving Average (加权移动平均线)
  • 动量指标
    ADX          —          Average Directional Movement Index (平均趋向指数)
    ADXR          —          Average Directional Movement Index Rating
    APO          —          Absolute Price Oscillator
    AROON          —          Aroon
    AROONOSC          —          Aroon Oscillator
    BOP          —          Balance Of Power
    CCI          —          Commodity Channel Index
    CMO          —          Chande Momentum Oscillator
    DX          —          Directional Movement Index
    MACD          —          Moving Average Convergence/Divergence (平滑异同移动平均线)
    MACDEXT          —          MACD with controllable MA type
    MACDFIX          —          Moving Average Convergence/Divergence Fix 12/26
    MFI          —          Money Flow Index
    MINUS_DI          —          Minus Directional Indicator
    MINUS_DM          —          Minus Directional Movement
    MOM          —          Momentum
    PLUS_DI          —          Plus Directional Indicator
    PLUS_DM          —          Plus Directional Movement
    PPO          —          Percentage Price Oscillator
    ROC          —          Rate of change : ((price/prevPrice)-1)*100
    ROCP          —          Rate of change Percentage: (price-prevPrice)/prevPrice
    ROCR          —          Rate of change ratio: (price/prevPrice)
    ROCR100          —          Rate of change ratio 100 scale: (price/prevPrice)*100
    RSI          —          Relative Strength Index (相对强弱指数)
    STOCH          —          Stochastic
    STOCHF          —          Stochastic Fast
    STOCHRSI          —          Stochastic Relative Strength Index
    TRIX          —          1-day Rate-Of-Change (ROC) of a Triple Smooth EMA
    ULTOSC          —          Ultimate Oscillator
    WILLR          —          Williams’ %R
  • 成交量指标
    AD          —          Chaikin A/D Line
    ADOSC          —          Chaikin A/D Oscillator
    OBV          —          On Balance Volume
  • 波动率指标
    ATR          —          Average True Range (平均真实波幅)
    NATR          —          Normalized Average True Range
    TRANGE          —          True Range (真实波幅)
  • 价格指标
    AVGPRICE          —          Average Price
    MEDPRICE          —          Median Price
    TYPPRICE          —          Typical Price
    WCLPRICE          —          Weighted Close Price
  • 周期指标
    HT_DCPERIOD          —          Hilbert Transform – Dominant Cycle Period
    HT_DCPHASE          —          Hilbert Transform – Dominant Cycle Phase
    HT_PHASOR          —          Hilbert Transform – Phasor Components
    HT_SINE          —          Hilbert Transform – SineWave
    HT_TRENDMODE          —          Hilbert Transform – Trend vs Cycle Mode
  • 形态识别
    CDL2CROWS          —          Two Crows (两只乌鸦)
    CDL3BLACKCROWS          —          Three Black Crows (三只乌鸦)
    CDL3INSIDE          —          Three Inside Up/Down (三内部上涨和下跌)
    CDL3LINESTRIKE          —          Three-Line Strike (三线打击)
    CDL3OUTSIDE          —          Three Outside Up/Down (三外部上涨和下跌)
    CDL3STARSINSOUTH          —          Three Stars In The South (南方三星)
    CDL3WHITESOLDIERS          —          Three Advancing White Soldiers (三白兵)
    CDLABANDONEDBABY          —          Abandoned Baby (弃婴形态)
    CDLADVANCEBLOCK          —          Advance Block (前方受阻(大敌当前))
    CDLBELTHOLD          —          Belt-hold (捉腰带线)
    CDLBREAKAWAY          —          Breakaway (脱离)
    CDLCLOSINGMARUBOZU          —          Closing Marubozu (收盘缺影线)
    CDLCONCEALBABYSWALL          —          Concealing Baby Swallow (藏婴吞没)
    CDLCOUNTERATTACK          —          Counterattack (反击线)
    CDLDARKCLOUDCOVER          —          Dark Cloud Cover (乌云压顶)
    CDLDOJI          —          Doji (十字)
    CDLDOJISTAR          —          Doji Star (十字星)
    CDLDRAGONFLYDOJI          —          Dragonfly Doji (蜻蜓十字/T形十字)
    CDLENGULFING          —          Engulfing Pattern (吞噬模式)
    CDLEVENINGDOJISTAR          —          Evening Doji Star (十字暮星)
    CDLEVENINGSTAR          —          Evening Star (暮星)
    CDLGAPSIDESIDEWHITE          —          Up/Down-gap side-by-side white lines (向上/下跳空并列阳线)
    CDLGRAVESTONEDOJI          —          Gravestone Doji (墓碑十字/倒T十字)
    CDLHAMMER          —          Hammer (锤头线)
    CDLHANGINGMAN          —          Hanging Man (上吊线)
    CDLHARAMI          —          Harami Pattern
    CDLHARAMICROSS          —          Harami Cross Pattern
    CDLHIGHWAVE          —          High-Wave Candle
    CDLHIKKAKE          —          Hikkake Pattern (陷阱)
    CDLHIKKAKEMOD          —          Modified Hikkake Pattern
    CDLHOMINGPIGEON          —          Homing Pigeon (家鸽)
    CDLIDENTICAL3CROWS          —          Identical Three Crows
    CDLINNECK          —          In-Neck Pattern
    CDLINVERTEDHAMMER          —          Inverted Hammer
    CDLKICKING          —          Kicking (反冲形态)
    CDLKICKINGBYLENGTH          —          Kicking – bull/bear determined by the longer marubozu
    CDLLADDERBOTTOM          —          Ladder Bottom
    CDLLONGLEGGEDDOJI          —          Long Legged Doji
    CDLLONGLINE          —          Long Line Candle
    CDLMARUBOZU          —          Marubozu
    CDLMATCHINGLOW          —          Matching Low (相同低价)
    CDLMATHOLD          —          Mat Hold
    CDLMORNINGDOJISTAR          —          Morning Doji Star (十字晨星)
    CDLMORNINGSTAR          —          Morning Star (晨星)
    CDLONNECK          —          On-Neck Pattern
    CDLPIERCING          —          Piercing Pattern (刺透形态)
    CDLRICKSHAWMAN          —          Rickshaw Man
    CDLRISEFALL3METHODS          —          Rising/Falling Three Methods
    CDLSEPARATINGLINES          —          Separating Lines
    CDLSHOOTINGSTAR          —          Shooting Star
    CDLSHORTLINE          —          Short Line Candle
    CDLSPINNINGTOP          —          Spinning Top(纺锤)
    CDLSTALLEDPATTERN          —          Stalled Pattern
    CDLSTICKSANDWICH          —          Stick Sandwich
    CDLTAKURI          —          Takuri (Dragonfly Doji with very long lower shadow)
    CDLTASUKIGAP          —          Tasuki Gap
    CDLTHRUSTING          —          Thrusting Pattern
    CDLTRISTAR          —          Tristar Pattern
    CDLUNIQUE3RIVER          —          Unique 3 River
    CDLUPSIDEGAP2CROWS          —          Upside Gap Two Crows
    CDLXSIDEGAP3METHODS          —          Upside/Downside Gap Three Methods
  • 统计函数
    BETA          —          Beta (贝塔系数)
    CORREL          —          Pearson’s Correlation Coefficient (r)
    LINEARREG          —          Linear Regression
    LINEARREG_ANGLE          —          Linear Regression Angle
    LINEARREG_INTERCEPT          —          Linear Regression Intercept
    LINEARREG_SLOPE          —          Linear Regression Slope
    STDDEV          —          Standard Deviation
    TSF          —          Time Series Forecast
    VAR          —          Variance
  • 数学变换
    ACOS          —          Vector Trigonometric ACos
    ASIN          —          Vector Trigonometric ASin
    ATAN          —          Vector Trigonometric ATan
    CEIL          —          Vector Ceil
    COS          —          Vector Trigonometric Cos
    COSH          —          Vector Trigonometric Cosh
    EXP          —          Vector Arithmetic Exp
    FLOOR          —          Vector Floor
    LN          —          Vector Log Natural
    LOG10          —          Vector Log10
    SIN          —          Vector Trigonometric Sin
    SINH          —          Vector Trigonometric Sinh
    SQRT          —          Vector Square Root
    TAN          —          Vector Trigonometric Tan
    TANH          —          Vector Trigonometric Tanh
  • 数学运算符
    ADD          —          Vector Arithmetic Add
    DIV          —          Vector Arithmetic Div
    MAX          —          Highest value over a specified period
    MAXINDEX          —          Index of highest value over a specified period
    MIN          —          Lowest value over a specified period
    MININDEX          —          Index of lowest value over a specified period
    MINMAX          —          Lowest and highest values over a specified period
    MINMAXINDEX          —          Indexes of lowest and highest values over a specified period
    MULT          —          Vector Arithmetic Mult
    SUB          —          Vector Arithmetic Substraction
    SUM          —          Summation

四、Tips

  1. 命令行打开方式

方法一:按下Win + R 键,弹出运行窗口,输入“cmd”后点击确定。

方法二:在电脑左下角的搜索框搜索“cmd”或“命令提示符”,点击检索结果“命令提示符”。

方法三:打开“开始”,点击“运行”,弹出运行窗口,输入“cmd”后点击确定。

  • 运行窗口如图所示:

 

能看到这里,说明你应该大概率成功安装完成TaLib了,那为何不考虑看看同样开源免费,且功能强大的 天勤量化(TqSdk)呢?

Ta-Lib如何安装?最先出现在信易科技

]]>
为什么我们的K线不一样? https://www.shinnytech.com/blog/why-our-kline-different/ Thu, 20 Dec 2018 03:51:34 +0000 https://www.shinnytech.com/?p=1251 来看一看我们的K线为什么这样生成

为什么我们的K线不一样?最先出现在信易科技

]]>
某些细心的用户已经发现了,我们软件的K线与其它软件的K线有点不一样。那么,究竟有什么不一样,为什么要这样做,这个问题比较有意思, 我们下面来详细的讲一讲。

首先我们要知道的是, K线图并不是市场原始数据。市场中,一个合约一天交易真正的原始数据是这个样子的:

成交时间 成交价 成交量 买单单号 卖单单号
2017/01/03 09:00:00.135000 3501.2 3 13748392 13744382
2017/01/03 09:31:20.345000 3501.2 3 15643244 15643242
2017/01/03 09:31:20.347000 3501.4 10 15643262 15643270
2017/01/03 09:31:20.352000 3502.0 8 15643282 15643283
2017/01/03 15:00:00.000000 3610.4 2 59020390 59020320

上面这个表,叫做“逐笔成交表”,市场中每发生一笔撮合成交,交易所都会把当时的时间,成交的价格,成交量,以及成交的双方是哪两个报单都记下来。拿到了这张表格,就能完全掌握一个合约每天成交价格的全部情况。但遗憾的是,这个表格的数据,交易所从来没有对外公开过,你也不可能在任何软件里面看到这套数据(这里有的同学要说了,行情软件右下角那里不就有一个“逐笔成交”板块么?呵呵,那个板块的数据并不是这个表的数据,具体是什么,下面会讲到)。

交易所真正对外发送的数据,学名叫“定时行情截面快照”,俗称tick数据。 什么意思呢?就像一个人拿着照相机,每隔一段时间(国内期货交易所一般是半秒),对着上面那张表的最后一行拍个照片,并且去掉了买卖双方的信息。

图1:从逐笔数据变为截面数据的原理,每隔半秒,交易所按照最近一次的成交价格,输出一笔行情数据。

这个数据是行情软件从交易所能拿到的最详细的数据表了。行情软件里面的Tick图和“分笔成交”板块里面的数据就是用的这套数据。从“逐笔成交表”到“定时行情截面快照”的过程中,损失了很多成交细节,同时制造了一个绝大多数用户都没有意识到的误区:用户在交易所公开数据里面所能拿到的所有成交价,其时间标注都是滞后的。如果你在软件中看到时间为09:30:01的价格是3500, 并不代表09:30:01这一时刻的成交价是3500,而是代表09:30:01之前,最后一笔成交价是3500。至于这笔成交的真实时间是多少,对不起,除了交易所没人知道。

图2:行情软件中的“分笔成交”板块,其中的每行并非代表一笔成交,时间也不是真实成交时间。两行之间也可能出现过其它的成交价格,在这里也都看不到。

了解了所谓Tick数据的真相以后,我们再来看K线图。K线图(除日线以外)并不是交易所发布的官方数据,只是行情软件为了方便用户做技术分析而构造的。与多数软件相比,我们的K线生成算法有两个特征:

  • 1、连续交易时段内生成K线时,对于正好处于K线分界位置的Tick数据,同时用作为前一根K线的收盘价和下一根K线的开盘价。
  • 2、连续交易时段内用K线填满。例如1个小时总是有60根分钟线,即使其中有几分钟没有成交,也不会把整根K线取消。

但是Why?为啥这样做就有道理呢?咱们一个一个分别说。

先来说第一条,有的同学特别不理解,你这么一搞,K线图上不就没有跳空缺口了么?确实是的。但是值得考虑的是,为什么你要在K线图上寻找跳空缺口呢?因为技术分析的教材教我们了,跳空缺口表示市场瞬间发生了巨大的价格变化。那么这句话有没有问题呢?有问题。只有在交易时段分断的地方(比如每天的收盘和第二天的开盘),这种说法是对的。在连续交易时段中,这个说法并不成立。让我们举个栗子:

图3:大多数行情软件在生成K线时,将正好处于K线边际的Tick数据作为前一根K线的收盘价,而不用作后一根K线的开盘价。

在上面这张图里面,可以看得很清楚,市场中一共发生了两次实际跳空事件,仅仅是因为成交时间的区别,一个在K线图上画成了跳空缺口,一个没有。有的同学以为,跳空缺口和大阳线的区别,表示一个是突然上涨,一个是持续上涨形成的,这其实都是幻觉。你以为你在观察市场突变的信号,其实只是在观察市场突变时交易所的钟是不是刚好在整点附近罢了。而且,交易品种的成交越活跃,你所看K线的周期越长,市场价格突变在K线图上体现为缺口的概率就越低。假定某个品种每秒有1笔成交,在任一笔成交价格暴涨的概率都相等,那当你看 3秒线时,每次暴涨有1/3的概率体现为跳空缺口,如果看的是一分钟线,那每次暴涨只有1/60的概率体现为跳空缺口。如果盯着跳空缺口去找交易机会,那每找到一次的同时,就漏掉了其它的59次。事实上,无论采取何种K线算法,都不可能正确的将连续交易过程的价格突变体现成K线图上的缺口形态。那么应该怎样处理较好呢?我们相信技术分析的基本原理:本质相同或相似的市场行为,应该表现为相同或相似的图表特征;本质不同的市场行为,应该表现为明显不同的图表特征。因此,我们在设计K线时,并不鼓励用户使用交易时段内的跳空缺口作为判断市场价格突变的分析和决策依据,特意消除了这种盘中的缺口信号(跨交易时段的跳空缺口仍保留)。

图4:快期的K线,正好处于K线边际的Tick数据既作为前一根K线的收盘价,又作为后一根K线的开盘价。每根K线都覆盖一个完整的3秒时段。交易时段内的所有价格变化都包含到K线中。

至于问题2,为什么要把交易时段内的K线填满,这同样是为了技术分析的准确。我们所使用的绝大多数技术指标和画线图形,都对K线条数非常敏感。我们以最简单的均线为例。假如我们在分钟线图上增加了一条周期为5的均线,我们希望看到的是什么呢?应该是最近5分钟的成交均价。如果我们的K线不是填满的,就会出现错误的结果:

    在K线不满的情况下,均线指标依然取了最近的5条K线来计算了均价,但这5根K线的时间范围是不确定的。换句话说,在K线不满的情况下,用户对于自己技术指标覆盖的时间范围是随机且不可控的。基于这样的数据做的分析和交易策略中也蕴含随机风险。因此我们在设计时刻意避免了这种情形,确保所有品种,所有合约的技术指标都是稳定连续可控的。

技术分析的历史悠久,许多成名著作与大师都诞生于几十上百年前。在那个年代,还没有计算机,报单画图基本靠手,报纸上的K线图还是以日线图为主。而最近一二十年来,随着IT技术飞速发展,市场交易频率和行情数据频率都空前提高,在这种高速高频环境中,技术分析的数据准备和分析工作应该怎样进行,这一方面还缺少权威成熟的理论与技术,有待于我们一同探索研究。

谢谢阅读,欢迎讨论。

为什么我们的K线不一样?最先出现在信易科技

]]>
CTP报单指令详解 https://www.shinnytech.com/blog/ctp-insert-order-field/ Thu, 30 Aug 2018 09:42:48 +0000 http://www.shinnytech.com/?p=374 期货交易的业务规则比较复杂,报单时需要填写不少字段。

CTP报单指令详解最先出现在信易科技

]]>

CTP报单指令详解

期货交易的业务规则比较复杂,报单时需要填写不少字段。下面以CTP接口为例,详细说明一下不同的业务指令应该如何填写CTP报单指令。

交易所代码 产品类型 业务类型 价格类型 指令类型 报单价格条件 OrderPriceType 触发条件 ContingentCondition 有效期类型 TimeCondition 成交量类型 VolumeCondition 备注
CZCE 郑商所 期货 单腿 限价单 限价 THOST_FTDC_OPT_LimitPrice THOST_FTDC_CC_Immediately THOST_FTDC_TC_GFD THOST_FTDC_VC_AV
FAK THOST_FTDC_OPT_LimitPrice THOST_FTDC_CC_Immediately THOST_FTDC_TC_IOC THOST_FTDC_VC_AV
市价单 市价 THOST_FTDC_OPT_AnyPrice THOST_FTDC_CC_Immediately THOST_FTDC_TC_GFD THOST_FTDC_VC_AV 剩余未成交部分不允许挂单。
FAK THOST_FTDC_OPT_AnyPrice THOST_FTDC_CC_Immediately THOST_FTDC_TC_IOC THOST_FTDC_VC_AV
跨期套利 限价单 限价 THOST_FTDC_OPT_LimitPrice THOST_FTDC_CC_Immediately THOST_FTDC_TC_GFD THOST_FTDC_VC_AV
FAK THOST_FTDC_OPT_AnyPrice THOST_FTDC_CC_Immediately THOST_FTDC_TC_IOC THOST_FTDC_VC_AV
跨品种套利 限价单 限价 THOST_FTDC_OPT_LimitPrice THOST_FTDC_CC_Immediately THOST_FTDC_TC_GFD THOST_FTDC_VC_AV
FAK THOST_FTDC_OPT_AnyPrice THOST_FTDC_CC_Immediately THOST_FTDC_TC_IOC THOST_FTDC_VC_AV
互换(跨期、跨品种) 限价单 限价 THOST_FTDC_OPT_LimitPrice THOST_FTDC_CC_Immediately THOST_FTDC_TC_GFD THOST_FTDC_VC_AV IsSwapOrder=True, CombOffsetFlag=”01″或”10″
FAK THOST_FTDC_OPT_AnyPrice THOST_FTDC_CC_Immediately THOST_FTDC_TC_IOC THOST_FTDC_VC_AV IsSwapOrder=True, CombOffsetFlag=”01″或”10″
期权 单腿 限价单 限价 THOST_FTDC_OPT_LimitPrice THOST_FTDC_CC_Immediately THOST_FTDC_TC_GFD THOST_FTDC_VC_AV
FAK THOST_FTDC_OPT_LimitPrice THOST_FTDC_CC_Immediately THOST_FTDC_TC_IOC THOST_FTDC_VC_AV
FOK THOST_FTDC_OPT_LimitPrice THOST_FTDC_CC_Immediately THOST_FTDC_TC_IOC THOST_FTDC_VC_CV
市价单 市价 THOST_FTDC_OPT_AnyPrice THOST_FTDC_CC_Immediately THOST_FTDC_TC_GFD THOST_FTDC_VC_AV 剩余未成交部分不允许挂单。
FAK THOST_FTDC_OPT_AnyPrice THOST_FTDC_CC_Immediately THOST_FTDC_TC_IOC THOST_FTDC_VC_AV
FOK THOST_FTDC_OPT_AnyPrice THOST_FTDC_CC_Immediately THOST_FTDC_TC_IOC THOST_FTDC_VC_CV
跨式套利 限价单 FAK THOST_FTDC_OPT_AnyPrice THOST_FTDC_CC_Immediately THOST_FTDC_TC_IOC THOST_FTDC_VC_AV
FOK THOST_FTDC_OPT_AnyPrice THOST_FTDC_CC_Immediately THOST_FTDC_TC_IOC THOST_FTDC_VC_CV
宽跨式套利 限价单 FAK THOST_FTDC_OPT_AnyPrice THOST_FTDC_CC_Immediately THOST_FTDC_TC_IOC THOST_FTDC_VC_AV
FOK THOST_FTDC_OPT_AnyPrice THOST_FTDC_CC_Immediately THOST_FTDC_TC_IOC THOST_FTDC_VC_CV
DCE 大商所 期货 单腿 限价单 限价 THOST_FTDC_OPT_LimitPrice THOST_FTDC_CC_Immediately THOST_FTDC_TC_GFD THOST_FTDC_VC_AV
FAK THOST_FTDC_OPT_LimitPrice THOST_FTDC_CC_Immediately THOST_FTDC_TC_IOC THOST_FTDC_VC_AV
FOK THOST_FTDC_OPT_LimitPrice THOST_FTDC_CC_Immediately THOST_FTDC_TC_IOC THOST_FTDC_VC_CV
止损 THOST_FTDC_OPT_AnyPrice THOST_FTDC_CC_Touch THOST_FTDC_TC_GFD THOST_FTDC_VC_AV
止盈 THOST_FTDC_OPT_AnyPrice THOST_FTDC_CC_TouchProfit THOST_FTDC_TC_GFD THOST_FTDC_VC_AV
市价单 市价 THOST_FTDC_OPT_AnyPrice THOST_FTDC_CC_Immediately THOST_FTDC_TC_GFD THOST_FTDC_VC_AV 市价单,剩余未成交部分转为涨跌停价限价单
FAK THOST_FTDC_OPT_AnyPrice THOST_FTDC_CC_Immediately THOST_FTDC_TC_IOC THOST_FTDC_VC_AV
FOK THOST_FTDC_OPT_AnyPrice THOST_FTDC_CC_Immediately THOST_FTDC_TC_IOC THOST_FTDC_VC_CV
止损 THOST_FTDC_OPT_AnyPrice THOST_FTDC_CC_Touch THOST_FTDC_TC_GFD THOST_FTDC_VC_AV 当市场最新价触及投资者预先设定止损价(或止盈价)时,指令立即转为市价指令。
止盈 THOST_FTDC_OPT_AnyPrice THOST_FTDC_CC_TouchProfit THOST_FTDC_TC_GFD THOST_FTDC_VC_AV
套利 限价单 限价 THOST_FTDC_OPT_LimitPrice THOST_FTDC_CC_Immediately THOST_FTDC_TC_GFD THOST_FTDC_VC_AV 大连套利单不支持限价fak fok。
互换 限价单 限价 THOST_FTDC_OPT_LimitPrice THOST_FTDC_CC_Immediately THOST_FTDC_TC_GFD THOST_FTDC_VC_AV IsSwapOrder=True, , CombOffsetFlag=”01″或”10″, 大连互换单不支持限价fak fok。
期权 单腿 限价单 限价 THOST_FTDC_OPT_LimitPrice THOST_FTDC_CC_Immediately THOST_FTDC_TC_GFD THOST_FTDC_VC_AV
FAK THOST_FTDC_OPT_LimitPrice THOST_FTDC_CC_Immediately THOST_FTDC_TC_IOC THOST_FTDC_VC_AV
FOK THOST_FTDC_OPT_LimitPrice THOST_FTDC_CC_Immediately THOST_FTDC_TC_IOC THOST_FTDC_VC_CV
止损 THOST_FTDC_OPT_AnyPrice THOST_FTDC_CC_Touch THOST_FTDC_TC_GFD THOST_FTDC_VC_AV
止盈 THOST_FTDC_OPT_AnyPrice THOST_FTDC_CC_TouchProfit THOST_FTDC_TC_GFD THOST_FTDC_VC_AV
SHFE 上期所 期货/期权 单腿 限价单 限价 THOST_FTDC_OPT_LimitPrice THOST_FTDC_CC_Immediately THOST_FTDC_TC_GFD THOST_FTDC_VC_AV
FAK任意成交数量 THOST_FTDC_OPT_LimitPrice THOST_FTDC_CC_Immediately THOST_FTDC_TC_IOC THOST_FTDC_VC_AV
FAK指定成交数量 THOST_FTDC_OPT_LimitPrice THOST_FTDC_CC_Immediately THOST_FTDC_TC_IOC THOST_FTDC_VC_MV MinVolume填非0值
FOK THOST_FTDC_OPT_LimitPrice THOST_FTDC_CC_Immediately THOST_FTDC_TC_IOC THOST_FTDC_VC_CV
CFFEX 中金所 期货 单腿 限价单 限价 THOST_FTDC_OPT_LimitPrice THOST_FTDC_CC_Immediately THOST_FTDC_TC_GFD THOST_FTDC_VC_AV
FAK任意成交数量 THOST_FTDC_OPT_LimitPrice THOST_FTDC_CC_Immediately THOST_FTDC_TC_IOC THOST_FTDC_VC_AV 立即成交剩余指令自动撤销
FAK指定成交数量 THOST_FTDC_OPT_LimitPrice THOST_FTDC_CC_Immediately THOST_FTDC_TC_IOC THOST_FTDC_VC_MV MinVolume填非0值, 指定数量成交剩余指令自动撤销
FOK THOST_FTDC_OPT_LimitPrice THOST_FTDC_CC_Immediately THOST_FTDC_TC_IOC THOST_FTDC_VC_CV 立即全部成交否则自动撤销
市价单 五档市价 THOST_FTDC_OPT_FiveLevelPrice THOST_FTDC_CC_Immediately THOST_FTDC_TC_IOC THOST_FTDC_VC_AV 市价单与对手方五档价格报单尝试成交,剩余未成交部分撤销
五档市价转限价 THOST_FTDC_OPT_FiveLevelPrice THOST_FTDC_CC_Immediately THOST_FTDC_TC_GFD THOST_FTDC_VC_AV 市价单与对手方五档价格报单尝试成交,剩余未成交部分转为最新价限价单
最优价 THOST_FTDC_OPT_BestPrice THOST_FTDC_CC_Immediately THOST_FTDC_TC_IOC THOST_FTDC_VC_AV 市价单与对手方最优一档价格报单尝试成交,剩余未成交部分撤销
最优价转限价 THOST_FTDC_OPT_BestPrice THOST_FTDC_CC_Immediately THOST_FTDC_TC_GFD THOST_FTDC_VC_AV 市价单与对手方最优一档价格报单尝试成交,剩余未成交部分转为最新价限价单
期权 单腿 限价单 限价 THOST_FTDC_OPT_LimitPrice THOST_FTDC_CC_Immediately THOST_FTDC_TC_GFD THOST_FTDC_VC_AV
FAK任意成交数量 THOST_FTDC_OPT_LimitPrice THOST_FTDC_CC_Immediately THOST_FTDC_TC_IOC THOST_FTDC_VC_AV
FAK指定成交数量 THOST_FTDC_OPT_LimitPrice THOST_FTDC_CC_Immediately THOST_FTDC_TC_IOC THOST_FTDC_VC_MV MinVolume填非0值
FOK THOST_FTDC_OPT_LimitPrice THOST_FTDC_CC_Immediately THOST_FTDC_TC_IOC THOST_FTDC_VC_CV

CTP报单指令详解最先出现在信易科技

]]>