掘金社区

发布掘金SDK v2.8.1,优化版本升级Pinned highlighted

一怒拔剑 发表在掘金2 2016-04-20 07:46:34

掘金2
1103
0
0

掘金SDK v2.8.1正式发布。本次发布在v2.8版本上进一步优化与功能增强,具体升级信息如下:

增加定时器功能

在SDK中添加定时器功能,策略师可用于实现订单超时则撤单等功能,可回避第三方实现定时器要求线程同步复杂问题,强烈推荐代替第三方定时器。掘金SDK可以设置多个定时器,不同频率的定时器可以同时使用。

<!--more myquant-->

Python SDK

<pre><code class="language-python" data-lang="python">class MyStrategy(StrategyBase):
#改写on_timer
def on_timer(self, interval):
if interval == 1000:
# TODO 1秒定时
elif interval == 5000:
# TODO 5秒定时
elif interval == 10000:
# TODO 10秒定时

if name == 'main':
myStrategy = MyStrategy(
username='user',
password='password',
strategy_id='sid',
subscribe_symbols='',
mode=1
)

#设置定时器,每1秒触发一次
myStrategy.set_timer(1000)

#设置定时器,每5秒触发一次
myStrategy.set_timer(5000)

#设置定时器,每10秒触发一次
myStrategy.set_timer(10000)

myStrategy.run()

</code></pre>

Matlab SDK

<pre><code class="language-matlab" data-lang="matlab">%定义回调函数

{
if interval == 1000
%TODO 1秒定时
elseif interval == 5000
%TODO 5秒定时
elseif interval == 10000
%TODO 10秒定时
end

}

%设置定时器回调函数
gm.SetTimerHandle(@OnTimer);

%设置定时器,每1秒触发一次
gm.SetTimer(1000);

%设置定时器,每5秒触发一次
gm.SetTimer(5000);

%设置定时器,每10秒触发一次
gm.SetTimer(10000);
</code></pre>

C# SDK

<pre><code class="language-csharp" data-lang="csharp">//改写Strategy.OnTimer
public override void OnTimer(int interval)
{
if(interval == 1000)
{
//TODO 1秒定时
}
else if(interval == 5000)
{
//TODO 5秒定时
}
else if(interval == 10000)
{
//TODO 10秒定时
}
}

//设置定时器,每1秒触发一次
s.SetTimer(1000);

//设置定时器,每5秒触发一次
s.SetTimer(5000);

//设置定时器,每10秒触发一次
s.SetTimer(10000);
</code></pre>

C SDK

<pre><code class="language-c" data-lang="c">//定义回调函数
void OnTimer(int interval)
{
if(interval == 1000)
{
//TODO 1秒定时
}
else if(interval == 5000)
{
//TODO 5秒定时
}
else if(interval == 10000)
{
//TODO 10秒定时
}

}

//设置定时器回调函数
gm_set_timer_callback(OnTimer);

//设置定时器,每1秒触发一次
gm_set_timer(1000);

//设置定时器,每5秒触发一次
gm_set_timer(5000);

//设置定时器,每10秒触发一次
gm_set_timer(10000);
</code></pre>

优化 Subscribe() 订阅行情API

在模拟行情模式(MODE=3)和回测模式(MODE=4)下,如果Run()之前调用,可以订阅到行情。

新增 Postion.available_yesterday 字段

含义为可平昨仓, 对于T+1交易品种,仓位管理更便利, 参见 Postion 结构定义。

SDK默认交易地址更变为终端(localhost:8001)

原默认交易地址默认为挖金子云交易服务,现更变为本地终端(localhost:8001),如需要通过挖金子仿真交易,则需要显式设置交易服务地址为 cloud.myquant.cn:8001 或 120.24.228.187:8001。

Bug 修复如下:

  • 修复Instrument中代码名称太长显示不全问题
  • 修复用秒分时回测时数据缺少问题
  • 修复调用gm_md_unsubscribe时和服务器断开连接问题

各种语言SDK具体动态如下:

更详细情况请参考sdk的文档和示例,以及sdk中的changelog。新的SDK下载


这是一个已从原 http://www.myquant.cn/news/2016/04/20/sdk-2-8-1-release/ 中分离的主题

暂无评论

Looks like your connection to 掘金量化社区 - 量化交易者的策略交流学习社区 was lost, please wait while we try to reconnect.