以文本方式查看主题

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

--  作者:步步高6668
--  发布时间:2015/7/2 12:17:33
--  请帮忙
请看下面的策略是不是有马后炮,也就是说当价格超岀戓低于限价的价格后一点时间才会发岀交易指令,如果确实是.又应怎样修改呢?谢谢



runmode:0;
//input:ceilingamt(60),flooramt(20),bolbandtrig(2);
variable:lookbackdays=20;
todayvolatility:=std(close,30);
yesterdayvolatility:=std(ref(close,1),30);
deltavolatility:=(todayvolatility-yesterdayvolatility)/todayvolatility;
lookbackdays:=lookbackdays*(1+deltavolatility);
lookbackdays:=round(lookbackdays);
lookbackdays:=min(lookbackdays,ceilingamt);
lookbackdays:=max(lookbackdays,flooramt);
mid:=ma(close,lookbackdays);
upband:=mid+bolbandtrig*std(close,lookbackdays);
dnband:=mid-bolbandtrig*std(close,lookbackdays);
buypoint:=ref(hhv(high,lookbackdays),1);
sellpoint:=ref(llv(low,lookbackdays),1);
longliqpoint:=ma(close,lookbackdays);
shortliqpoint:=ma(close,lookbackdays);
if holding=0 then begin
if close>upband then
  buy(1,1,limitr,max(open,buypoint));
end
if holding=0 then begin
if close<dnband then
  buyshort(1,1,limitr,min(open,sellpoint));
end
if holding>0 then begin
if close<dnband then begin
  sell(1,holding,limitr,min(open,sellpoint));
  buyshort(1,1,limitr,min(open,sellpoint));
end

if low<=longliqpoint then
  sell(1,holding,limitr,min(open,longliqpoint));
end
if holding<0 then begin
if close>upband then begin
  sellshort(1,holding,limitr,max(open,buypoint));
  buy(1,1,limitr,max(open,buypoint));
end

if high>=shortliqpoint then
  sellshort(1,holding,limitr,max(open,shortliqpoint));
end
盈亏:asset-50000,noaxis,colorred,linethick2;

--  作者:jinzhe
--  发布时间:2015/7/2 13:07:24
--  

你设置的是走完k线就是会走完k线后下单

你设置的是固定轮询就是即时触发

价格触发后延迟下单的,系统没有这样的设置


--  作者:步步高6668
--  发布时间:2015/7/2 13:53:10
--  
我是想请你看看上面的策略是否有类似偷价的行为.谢谢
--  作者:jinzhe
--  发布时间:2015/7/2 13:54:48
--  

金字塔的下单就我前面说的两种方式,你讲的触发后延迟几秒下单在金字塔里面是设置不了的,这个和代码没关系

[此贴子已经被作者于2015/7/2 13:54:56编辑过]

--  作者:步步高6668
--  发布时间:2015/7/2 14:01:21
--  
你是说触发后延迟几秒下单是正常的?
--  作者:jinzhe
--  发布时间:2015/7/2 14:02:28
--  

我没说正常,我说的是:金字塔没有这样的下单方式

你是不是使用走完k线下单了,导致所有的单子都是走完k线后才下单的?

[此贴子已经被作者于2015/7/2 14:03:15编辑过]

--  作者:步步高6668
--  发布时间:2015/7/2 14:17:55
--  
其实我想让你帮我看看上面的代码表达意思有没有类似这种情况:假如买开1手现价是4120,可指令发岀的限价单价格是4100
又假如卖开1手现价是4100,可指令发岀的限价单价格是4130.    请帮我仔细看看,谢谢

--  作者:jinzhe
--  发布时间:2015/7/2 14:31:47
--  

你想要用现价发单?你那你用limitr,close啊,


--  作者:步步高6668
--  发布时间:2015/7/2 14:39:19
--  
你的意思是会岀现我所假设的情况吗?
--  作者:jinzhe
--  发布时间:2015/7/2 14:45:34
--  
我的意思是发什么单看你写的价格,你想要限价不低于close就用limitr,close。你的那个价格和open比的,没有和close 的判断我不知道下单价格是否是比close大还是小
[此贴子已经被作者于2015/7/2 14:46:10编辑过]