« 上一篇

TradestationAPI 授权认证机制

Tradestation API 采用了OAuth2.0认证方式(是目前互联网领域最流行的授权机制,用来给第三方应用授权)

OAuth2.0基于RFC6749标准,它又有四种子模式

1.授权码 authorization-code

2.隐藏式 implicit

3.密码式 password

4.客户端凭证 client credentials


Tradestation API 就采用了第一种(授权码 authorization-code)子模式


首先我们需要去Tradestation备案申请到 client_idclient_secret

client_id (The client applications API key)

client_secret (The secret for the client applications API Key)

 

下面开始梳理程序流程: 


服务器角色说明:  

我们自己的服务器,简称 应用服务器】

Tradestation API所在服务器,简称 TAPI服务器】

 

第一步:

应用服务器】访问 TAPI服务器】,开始认证,要传递自己服务器上的一个url程序页面地址给【TAPI服务器】

 

第二步:

用户用Tradestation账号密码登录认证成功以后,【TAPI服务器】回调【应用服务器】上的url程序页面地址,同时传递授权码

 

第三步:

应用服务器】上的url程序拿到授权码后,再次向【TAPI服务器】发请求,传递授权码,用来换取访问令牌,也需要传递自己服务器上的一个url程序页面地址给【TAPI服务器】

 

第四步:

TAPI服务器】将访问令牌传给【应用服务器】,具体方式是回调【应用服务器】上的url程序页面地址

 

 

第五步:(因为访问令牌过一段时间就会失效,所以每隔一段时间都需要刷新令牌)

应用服务器】访问 TAPI服务器】,刷新访问令牌

 

 

系统工作流程图如下(假设由财务人员管理账号):

 

 

整体包括:


1.  搭建外网可以访问的web服务器

2.利用本web程序,用户获取code,利用code获取token,保存token,刷新token

3.最后交易模块通过token授权后获取行情,实时交易等


项目地址: https://github.com/phonegapX/pyts