掘金社区

是否能提供Matlab 下面的一个例子Pinned highlighted

j***g@live.co.uk 发表在掘金2 2016-12-15 08:51:42

掘金2
907
3
0

已经装好终端和Matlab包,也按照教程生成了m文件,可以登录,可以看到行情,但就是不知道怎么加代码和自己的策略相结合。

比如在模拟环境下,订阅了15秒的bar数据,如果想每15秒生成个交易信号(如last close > average (last 30个bar的close)就多1手,反之就空1手),在M 文件的哪里添加这段代码?(另外 我把@用AT代替了,论坛认为我在at用户)

我的M文件如下:

function [ ] = MAtest( )

ret = gm.Init('jin.zhang@live.co.uk', 'jinjin0381', 3, 'SHFE.rb1705.bar.15', '77c5bb96-c267-11e6-a74b-989096c814a1', 'localhost:8001');

if ret ~= 0
disp('init error!');
disp(ret);
return;
end

gm.SetBarHandle( AT OnBar);

gm.SetOrderHandle( AT OnOrder);

gm.SetExecRptHandle( AT OnExecRpt);

gm.SetLoginHandle( AT OnLogin);

gm.SetErrorHandle( AT OnError);

ret = gm.Run();
if ret ~= 0
disp('Run Error! code: ');
disp(ret);
return;
end

end

function [ ] = OnBar( bar )
x = sprintf('分时行情: %s %s.%s %d %d', char(bar{1,'strtime'}), char(bar{1,'exchange'}), char(bar{1,'sec_id'}), bar{1, 'bar_type'}, bar{1,'close'});
disp(x);
end

function [ ] = OnOrder( order )

end

function [ ] = OnExecRpt( rpt )

end

function [ ] = OnLogin( mask )

disp('md login');
mask

end

function [ ] = OnError( code, msg )

disp(msg);

end

评论: 3

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