以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  公式模型编写问题提交  (http://weistock.com/bbs/list.asp?boardid=4)
----  请老师帮忙改进模型  (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=52854)

--  作者:ailegrasper
--  发布时间:2013/6/6 11:03:37
--  请老师帮忙改进模型

想写一个根据sar操作的模型,sar大家都知道显示为两类移动止损点,一种是空头一种是多头(在文华里面空头移动止损点显示为绿色,多头为红色)
操作意愿是
1,账户空仓时,当指定周期某根k线最高点超过空头移动止损点就做多,或k线最低点低于多头移动止损点做空。
2,账户持有多单时,当k线最低点低于多头移动止损点时平多开空。
3,账户持有空单时,k线最高点超过空头移动止损点时平空翻多。

现在模型出现的问题是,系统将sar两类移动止损点看成是一种,所以当某根k线最高点超过sar和最低点低于sar都发生时,会出现开多平空和平多开空同时操作。(如图)
请老师帮忙看看系统应该怎样写好,不胜感激。

 


此主题相关图片如下:0gghhhre.jpg
按此在新窗口浏览图片

以下是程序

开始:SAR(P,STEP,MAXP),CIRCLEDOT;
h1:h;

h2:l;
SARLINE:ABS(SAR(P,STEP,MAXP));//定义SARLINE
手数:=ss;

kdpk:=H>SARLINE;//开多平空条件
kkpd:=l<SARLINE;//开空平多条件

//交易系统
if kdpk then begin
sellshort(holding<0,holding,MARKET);
buy(holding=0,ss,MARKET);
end

if kkpd then begin
sell(holding>0,holding,MARKET);
buyshort(holding=0,ss,MARKET);
end

当前持仓:HOLDING,COLORGRAY,LINETHICK0;
当前资产:ASSET,NOAXIS,COLORGRAY;


--  作者:jinzhe
--  发布时间:2013/6/6 11:16:06
--  
处理中,预计下午给出结果,请稍等
--  作者:ailegrasper
--  发布时间:2013/6/6 11:26:50
--  

非常感谢!


--  作者:jinzhe
--  发布时间:2013/6/6 14:10:55
--  

你这个是思路问题吧,

H>line

l<line

这两个条件同时满足了,所以才在一根k线上同时做了双向操作

反过来写就不会了

h<line

l>line


--  作者:ailegrasper
--  发布时间:2013/6/6 15:22:04
--  

如果这样改就变成反向做单了,根本来的买卖相反,而且还是会有那个现象。我的本意是碰到sar信号就做一次反手。


--  作者:jinzhe
--  发布时间:2013/6/6 15:35:18
--  
if kdpk then begin
sellshort(holding<0,holding,MARKET);
buy(holding=0,ss,MARKET);
end

if kkpd then begin
sell(holding>0,holding,MARKET);
buyshort(holding=0,ss,MARKET);
end

 

改写成

 

 

if kdpk then begin
sellshort(holding<0 and enterbars>0,holding,MARKET);
buy(holding=0 ,ss,MARKET);
end

if kkpd then begin
sell(holding>0 and enterbars>0,holding,MARKET);
buyshort(holding=0,ss,MARKET);
end

 

加了enterbars判断之后,能不在同根k线上做多次平仓

[此贴子已经被作者于2013-6-6 15:35:39编辑过]

--  作者:ailegrasper
--  发布时间:2013/6/6 16:38:57
--  
感谢老师,问题解决了,另外如果用marketr的话,实盘中是否会按信号时的市价操作?还是按收盘价?  如果想设合约价格回落n%作止损应该怎样写?谢谢指教!
--  作者:jinzhe
--  发布时间:2013/6/6 16:46:17
--  

当前信号也就是发出信号时的市价操作

回落止损参考这个范例
图片点击可在新窗口打开查看此主题相关图片如下:3.png
图片点击可在新窗口打开查看