以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  公式模型编写问题提交  (http://weistock.com/bbs/list.asp?boardid=4)
----  期指开仓后如果我要固定2点止损(如3000点买入开仓,当指数为2998点就止损),  (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=66747)

--  作者:cbb
--  发布时间:2014/6/30 9:34:40
--  期指开仓后如果我要固定2点止损(如3000点买入开仓,当指数为2998点就止损),

期指开仓后如果我要固定2点止损(如3000点买入开仓,当指数为2998点就止损),
1、如果盈利1点,止盈位就保0.2个点(3000点买入开仓,当指数为3001点就止盈位跳到3000.2)。
2、如果盈利3点,止盈位就保1.4个点(3000点买入开仓,当指数为3003点就止盈位跳到3001.4)。

请老师帮忙解决

,谢谢!


--  作者:qq代人发帖
--  发布时间:2014/6/30 9:45:20
--  

//以多头为例
if ENTERPRICE-l>=2 then
sell(holding>0,holding,market);

if h-ENTERPRICE>=1 then
sell(holding>0,holding,limit,ENTERPRice+0.2);

if h-ENTERPRICE>=3 then
sell(holding>0,holding,limit,ENTERPRICE+1.4);


--  作者:cbb
--  发布时间:2014/6/30 9:54:09
--  

有多头,空头,完整的代码吗?


--  作者:qq代人发帖
--  发布时间:2014/6/30 10:27:07
--  

//多头
if ENTERPRICE-l>=2 then
sell(holding>0,holding,market);

if h-ENTERPRICE>=1 then
sell(holding>0,holding,limit,ENTERPRice+0.2);

if h-ENTERPRICE>=3 then
sell(holding>0,holding,limit,ENTERPRICE+1.4);

 

//空头
if h-ENTERPRICE>=2 then
sellshort(holding<0,holding,market);
if ENTERPRICE-l>=1 THEN
sellshort(holding<0,holding,limit,ENTERPRICE-0.2);
if ENTERPRICE-l>=3 THEN
sellshort(holding<0,holding,limit,ENTERPRICE-1.4);


--  作者:cbb
--  发布时间:2014/6/30 13:40:33
--  

改成专业版带后台,测试,怎么不行呢?


--  作者:qq代人发帖
--  发布时间:2014/6/30 13:45:54
--  

这是图表交易代码,您自己改成后台了?

模拟交易测试不行?

[此贴子已经被作者于2014/6/30 13:46:19编辑过]

--  作者:cbb
--  发布时间:2014/6/30 14:11:46
--  
是的,
--  作者:qq代人发帖
--  发布时间:2014/6/30 14:14:19
--  
把您改过后的代码贴出来,具体描述下模拟测试怎么不行。
--  作者:cbb
--  发布时间:2014/6/30 15:03:07
--  

程序1:
MACD_1:stkindi(\'\',\'MACD.macd1\',0,1,0);
MACD_DEA1:stkindi(\'\',\'MACD.DEA\',0,1,0);
MACD_DIFF1:stkindi(\'\',\'MACD.DIFF\',0,1,0);

TT:cross(MACD_DIFF1,MACD_DEA1);

 

程序2:
v1_min1:=stkindi(\'\',\'程序1.TT\',0,1);
v2_min1:=stkindi(\'\',\'程序1.TT\',0,1);

if v1_min1 and tholding=0  then begin tbuy(tbuyholding(0)=0,1,mkt);
if v2_min1 and tholding=0  then begin  tbuyshort(tsellholding(0)=0,1,mkt);

if h-ENTERPRICE>=2 then  tsellshort(1,0,mkt);
if ENTERPRICE-l>=2 then  tsell(1,0,mkt);

if ENTERPRICE-l>=1.2 THEN  tsellshort(1,0,mkt);
if h-ENTERPRICE>=1.2 then  tsell(1,0,mkt);

if ENTERPRICE-l>=1.4 THEN  tsellshort(1,0,mkt);
if h-ENTERPRICE>=1.4 then  tsell(1,0,mkt);


--  作者:qq代人发帖
--  发布时间:2014/6/30 15:09:08
--  

if v1_min1 and tholding=0 then begin tbuy(tbuyholding(0)=0,1,mkt);
if v2_min1 and tholding=0 then begin tbuyshort(tsellholding(0)=0,1,mkt);

这两行少了end

enterprice 是图表函数,需要换成 tENTERPRICE