以文本方式查看主题

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

--  作者:qq代人发帖
--  发布时间:2014/1/29 10:49:24
--  程序化最后2个问题

请教:程序化最后问题:“关注问题1、2”

1、固定止损:3个点
   系统“自动移动止盈”:如果赚了3个点,自动设置止盈0.4,
                         如果赚了5个点,自动设置止盈:把0.4改为2,
                         如果赚了10个点,自动设置止盈:把2改为5,


v_2013_min1:=stkindi(\'\',\'公式1.var2013\',0,1);
v_2013_min5:=stkindi(\'\',\'公式1.var2013\',0,2);
v_2013_min15:=stkindi(\'\',\'公式1.var2013\',0,3);
v_2014_min1:=stkindi(\'\',\'公式1.var2014\',0,1);
v_2014_min5:=stkindi(\'\',\'公式1.var2014\',0,2);
v_2014_min15:=stkindi(\'\',\'公式1.var2014\',0,3);
if v_2013_min1 or v_2013_min5 or v_2013_min15 then tbuy(tbuyholding(0)=0,1,mkt);
if v_2014_min1 or v_2014_min5 or v_2014_min15 then tbuyshort(tsellholding(0)=0,1,mkt);//满足任意一个条 件后开仓{上述经测试没有问题}
if tenterprice-dynainfo(7)>3 and tbuyholding(0)>0 then tsell(1,0,mkt);
if dynainfo(7)-tenterprice>3 and tsellholding(0)>0 then tsellshort(1,0,mkt);//固定止损{问题1、此处有盈 利2-3个点系统会自动平仓}


if hhv(h,tenterbars+1)-tenterprice>3 and hhv(h,tenterbars+1)-dynainfo(7)>=0.4 and tbuyholding(0)>0 then  tsell(1,0,mkt);
if hhv(h,tenterbars+1)-tenterprice>5 and hhv(h,tenterbars+1)-dynainfo(7)>=2 and tbuyholding(0)>0 then  tsell(1,0,mkt);
if hhv(h,tenterbars+1)-tenterprice>10 and hhv(h,tenterbars+1)-dynainfo(7)>=10 and tbuyholding(0)>0 then  tsell(1,0,mkt);

if tenterprice-llv(l,tenterbars+1)>3 and dynainfo(7)-llv(l,tenterbars+1)>=0.4 and tsellholding(0)>0  then tsellshort(1,0,mkt);
if tenterprice-llv(l,tenterbars+1)>5 and dynainfo(7)-llv(l,tenterbars+1)>=2 and tsellholding(0)>0 then  tsellshort(1,0,mkt);
if tenterprice-llv(l,tenterbars+1)>10 and dynainfo(7)-llv(l,tenterbars+1)>=10 and tsellholding(0)>0  then tsellshort(1,0,mkt);//移动止盈{问题2:上述赚钱了,会自动平仓,程序没有按要求去执行}


--  作者:jinzhe
--  发布时间:2014/1/29 10:52:29
--  
v_2013_min1:=stkindi(\'\',\'公式1.var2013\',0,1);
v_2013_min5:=stkindi(\'\',\'公式1.var2013\',0,2);
v_2013_min15:=stkindi(\'\',\'公式1.var2013\',0,3);
v_2014_min1:=stkindi(\'\',\'公式1.var2014\',0,1);
v_2014_min5:=stkindi(\'\',\'公式1.var2014\',0,2);
v_2014_min15:=stkindi(\'\',\'公式1.var2014\',0,3);
if v_2013_min1 or v_2013_min5 or v_2013_min15 then tbuy(tbuyholding(0)=0,1,mkt);
if v_2014_min1 or v_2014_min5 or v_2014_min15 then tbuyshort(tsellholding(0)=0,1,mkt);//满足任意一个条 件后开仓{上述经测试没有问题}
if tenterprice-dynainfo(7)>3 and tbuyholding(0)>0 then tsell(1,0,mkt);
if dynainfo(7)-tenterprice>3 and tsellholding(0)>0 then tsellshort(1,0,mkt);//固定止损{问题1、此处有盈 利2-3个点系统会自动平仓}


if hhv(h,tenterbars+1)-tenterprice>3 and hhv(h,tenterbars+1)-dynainfo(7)>=0.4 and tbuyholding(0)>0 then  tsell(1,0,mkt);
if hhv(h,tenterbars+1)-tenterprice>5 and hhv(h,tenterbars+1)-dynainfo(7)>=2 and tbuyholding(0)>0 then  tsell(1,0,mkt);
if hhv(h,tenterbars+1)-tenterprice>10 and hhv(h,tenterbars+1)-dynainfo(7)>=5 and tbuyholding(0)>0 then  tsell(1,0,mkt);

if tenterprice-llv(l,tenterbars+1)>3 and dynainfo(7)-llv(l,tenterbars+1)>=0.4 and tsellholding(0)>0  then tsellshort(1,0,mkt);
if tenterprice-llv(l,tenterbars+1)>5 and dynainfo(7)-llv(l,tenterbars+1)>=2 and tsellholding(0)>0 then  tsellshort(1,0,mkt);
if tenterprice-llv(l,tenterbars+1)>10 and dynainfo(7)-llv(l,tenterbars+1)>=5 and tsellholding(0)>0  then tsellshort(1,0,mkt);

 

 

之前说的是赢了10点止盈10点,所以我才这样写,后来又说是5点,我也改过了,

现在再改一次