使用流程
- 阅读官网接口说明手册、示例及数据量计算、账号权限等规则;
- 下载 Windows SDK 安装包登录超级命令(或使用官网网页版本超级命令)查看接口指标并生成取数命令;
- SDK接口按照下面说明进行环境初始化设置(HTTP接口无需初始化) ;
- 开发环境使用数据接口账号登录 ;
- 开发环境通过取数命令执行提取数据;
超级命令客户端介绍
用户可以通过超级命令客户端查看接口支持的指标、辅助生成接口提取命令。
一、Windows版本超级命令终端
- 下载SDK接口Windows安装包解压后双击SuperCommand.exe打开超级命令客户端;
- 指标查询与命令生成方式;
选择使用语言
选择函数、证券类型
选择代码、指标、指标参数生成命令
点击确定后生成接口命令
二、网页版本超级命令
地址:https://quantapi.10jqka.com.cn/gwstatic/static/ds_web/super-command-web/index.html
SDK接口环境修复说明
SDK接口Windows环境部署
下载Windows SDK安装包解压后,登录超级命令客户端-工具-环境设置进行环境修复
注:环境修复前用户需有对应语言的开发环境,此步骤不会帮助用户安装。
Python
方法1:超级命令终端环境修复
- 选择Python语言点击确定
- 选择使用的Python版本路径进行修复
如未识别出目前使用的Python版本或者虚拟环境路径可以点击‘添加路径’手动添加修复; 如不清楚目前所使用的Python路径,可以在使用的开发工具中执行如下命令查看:
import sys
print(sys.executable)
- 点击继续后程序会自动进行修复,点击显示桌面如出现如下提示框:表示修复成功,点击确定完成修复。
修复成功后会在Python目录:Lib\site-packages文件夹下生成iFinDPy.pth文件,文件内容是本地接口包的路径。
注意:部分用户新安装的Python版本,还没有安装任何Python库,没有Lib\site-packages文件夹,这种情况需要手动加一下Lib\site-packages文件夹再进行环境修复才会成功。
- 修复成功后可以在开发软件中进行接口测试(建议修复后重启Spyder、PyCharm等开发工具,如不重启可能还会报错)
方法2: pip包管理器安装接口包
- 安装接口包命令:pip install iFinDAPI
如上截图安装命令执行成功后查看使用的Python版本包路径:Lib\site-packages目录
如上截图如有iFinDAPI相关目录说明安装成功
- 更新接口包命令:
pip install --upgrade iFinDAPI
MATLAB
- 选择MATLAB语言点击确定
- 选择使用的MATLAB版本路径进行修复
如未识别出路径可以点击手动添加路径
- 点击继续后程序会自动进行修复,点击显示桌面出现如下提醒框则表示修复成功,点击确定完成修复
- 修复成功后可以在MATLAB中进行接口取数测试
Java
- 选择Java语言点击确定
- 选择使用的Java版本路径进行修复
- 点击继续后程序会自动进行修复,点击显示桌面出现如下提醒框则表示修复成功,点击确定完成修复
- Jar包导入路径 64位:THSDataInterface_Windows\bin\x64\ThsJDI.jar 32位:THSDataInterface_Windows\bin\x86\ThsJDI.jar
- 修复成功后可以使用官网示例修改测试接口
R
- 选择R语言点击确定
- 选择目前使用的R版本路径进行修复
- 选择继续后程序会自动进行修复,点击显示桌面出现如下提醒框则表示修复成功,点击确定完成修复
- 修复成功后可以在R中进行接口测试
VBA
- 选择VBA语言点击确定
- 选择VBA路径进行修复
- 选择继续后程序会自动进行修复,点击显示桌面出现如下提醒框则表示修复成功,点击确定完成修复
- 修复成功后可以进行接口测试
C#
- C#语言无需在终端中修复,直接查看官网应用示例(C#接口函数使用案例)
- 修改接口安装包本地路径、填写账号、密码
- 修改需要的函数命令执行
C++
- C++语言也无需在终端中修复,直接查看官网应用示例
- 修改接口安装包本地路径、填写账号、密码
- 修改需要的函数命令执行
SDK接口linux环境部署
在调用前必须在解压后的接口目录中使用ldd libShellExport.so、ldd libFTDataInterface.so和ldd hqdatafeed查看接口库所依赖的环境是否齐全,如果不齐全,请使用yum或者apt-get安装(以下说明命令以Ubuntu环境为例),如下:
Centos: sudo yum install -y libgcc.i686 zlib.i686 glibc.i686 libstdc++-devel.i686
Ubuntu: sudo apt-get install libc6:i386 libncurses5:i386 libstdc++6:i386
- 如出现以下‘not found’报错,按照缺少报错安装
- 常见缺少libidn.so.11报错安装方式
可以先搜索一下libidn并安装:
查找:apt-cache search libidn
安装:sudo apt install libidn-dev
安装后如ldd libFTDataInterface.so查看环境依赖还是缺少,可能是安装的位置有误
安装后如ldd libFTDataInterface.so查看环境依赖还是缺少,可能是安装的位置有误 先搜索:
sudo find / | grep libidn.so
如下图可以查看到libidn.so.11在目录:/snap/core18/2538/lib/x86_64-linux-gnu/ 将文件移动到ldd查询到的其他文件的目录:/lib/x86_64-linux-gnu/
命令:sudo cp /snap/core18/2538/lib/x86_64-linux-gnu/libidn.so.11 /lib/x86_64-linux-gnu
Python
- 按照上述说明环境依赖查询已经齐全后,调用接口目录中installiFinDPy.py安装
例如:接口压缩包解压放在/lib目录下 32位调用接口bin目录中的installiFinDPy.py安装,输入参数为文件解压后的文件路径 例如:压缩包解压放在/lib目录下
Sudo python /lib/bin/installiFinDPy.py /lib
64位调用接口bin64目录中的installiFinDPy.py安装,输入参数为文件解压后的文件路径 例如:压缩包解压放在/lib目录下
Sudo python /lib/bin64/installiFinDPy.py /lib
- 环境部署好后测试接口的使用
Java
- 按照上述说明环境依赖查询已经齐全后,在编译使用前,请添加当前目录到系统环境变量 LD_LIBRARY_PATH(由于本程序使用到了配置文件,请勿复制到系统目录,否则会导致数据异常),如解压之后的bin64所在目录为 /root/Linux
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/root/Linux/bin64
- 修改示例代码登录函数、提取数据命令函数测试
- 引入jar包,使用示例代码测试 例如解压之后的java所在目录为/root/Linux 命令如下(注意命令间空格):
javac -cp /root/Linux/java/Ths/output/ThsJDI.jar test.java
java -cp /root/Linux/java/Ths/output/ThsJDI.jar: test
C++
- 按照上述说明环境依赖查询已经齐全后,下载官网示例修改测试
- 解压linux安装包与C++示例
- 修改示例、填写账号、密码
- 添加接口目录到系统环境变量(以bin64目录为例)
- 编译、测试接口示例
HTTP接口使用说明
HTTP接口说明
refresh token与access token说明
接口鉴权方案分为长期的refresh_token和短期的access_token
refresh_token:用于获取最新有效的access_token值;
access_token:用于获取具体函数数据。
- refresh token
refresh_token有效期与获取时账号有效期一致(后续账号有续期、权限变更必须重新获取来更新refresh token的有效期)。 refresh_token只用来请求当前有效的access_token或者获取一个新的access_token。 refresh_token只能通过超级命令客户端“工具-refresh_token查询”获取。
refresh token更新后,所有环境过去的的refresh_token、access_token均会失效;
access token
access_token可以利用refresh token使用接口函数获取,在初次生成的七天后失效,如失效前三天重新获取access_token会刷新失效时间。 access_token用来直接向同花顺服务器请求数据。 单个access_token最多支持20个IP,如报错‘Device exceed limit’可以更新access token重置绑定。
Postman等工具使用HTTP接口
获取access token
超级命令选择HTTP接口生成get_access_token函数的命令
超级命令获取到refresh token后利用接口获取最新的access token
获取数据
超级命令查看取数函数命令
填写参数获取数据
Python等语言环境使用HTTP接口
可以参考官网示例测试-HTTP接口应用案例(python环境)
获取access token
获取数据
接口白名单及代理设置
开通接口域名或IP白名单
部分用户因公司网络安全限制无法直接连接公网,需先将接口域名或IP添加至白名单才能使用接口网络,否则登录接口会报错-340网络不可用:
开通接口域名或者IP白名单如下:
域名 | IP | 端口 | 说明 |
---|---|---|---|
quantapi.51ifind.com | 121.52.252.15 | 80、443 | 主域名 |
ft.10jqka.com.cn | 58.220.49.150 | 80、443 | 备用域名 |
download.10jqka.com.cn | 61.136.165.240 | 80、443 | 超级命令自动升级 |
119.12.174.130 | 443 | 海外专线(以下只有境外用户开通) | |
119.13.107.34 | 443 | 海外专线(备用) | |
119.8.60.128 | 80、443 | 海外安装包、升级包下载服务器IP |
注意: 建议开通域名,因域名对应的IP地址不是固定的,先解析出来得是cache IP; 如用户只能设置IP,开通接口IP白名单后需要在本地设备hosts设置一下。
接口设置代理
Windows环境设置
- 解压Windows安装包后打开接口超级命令客户端:
- 在登录界面点击设置图标:
- 选择代理类型与填写代理信息:
注:用户自己的代理服务器选择‘HTTP代理’,代理服务器地址、端口必填,账号、密码如未设置可以不填;专线代理用户联系客户经理咨询。
linux环境设置
Linux环境代理设置需手动修改配置文件system_setting.ini
system_setting.ini路径: 64位目录:bin64\Tool\etc\system_setting.ini 32位目录:bin\Tool\etc\system_setting.ini
添加内容如下:
[System]
proxy=1 //控制是否使用代理。1表示使用代理;0表示不使用代理。
ip=10.0.16.237 //代理服务器ip
port=802 //代理服务端口
type=http //代理类型,目前只支持http
user=User //代理服务身份核验账号
password=123456 //代理服务身份核验密码