以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  公式模型编写问题提交  (http://weistock.com/bbs/list.asp?boardid=4)
----  请教老师一个策略卖出模块的问题  (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=97756)

--  作者:深海漫游
--  发布时间:2016/5/23 16:42:36
--  请教老师一个策略卖出模块的问题

INPUT:N1(6,2,100,10),N2(12,2,100,10),N3(24,2,100,10);
LC := REF(CLOSE,1);
RSI1:=SMA(MAX(CLOSE-LC,0),N1,1)/SMA(ABS(CLOSE-LC),N1,1)*100;
RSI2:=SMA(MAX(CLOSE-LC,0),N2,1)/SMA(ABS(CLOSE-LC),N2,1)*100;
RSI3:=SMA(MAX(CLOSE-LC,0),N3,1)/SMA(ABS(CLOSE-LC),N3,1)*100;

KD:=RSI1<20 ;
PD:=RSI1>80;

 IF KD AND HOLDING<=0 THEN
 BEGIN
 BUY(HOLDING=0,100%,MARKETR);
 END
 
 IF pd AND HOLDING>=0 THEN
 BEGIN
 SELL(HOLDING>0,0,MARKETR);

 END

老师我想在这个策略上,卖出方式用赚2%就卖出这种方式,再加上跌2%就止损,怎么修改好,谢谢老师


--  作者:jinzhe
--  发布时间:2016/5/24 8:47:11
--  

if (asset-ref(asset,enterbars))/ref(asset,enterbars)>0.02  then sell(1,0,marketr);

if (ref(asset,enterbars)-asset)/ref(asset,enterbars)>0.02 then sell(1,0,marektr);


--  作者:jinzhe
--  发布时间:2016/5/24 8:53:12
--  

if (asset-ref(asset,enterbars))/ref(asset,enterbars)>0.02  then sell(1,0,marketr);

if (ref(asset,enterbars)-asset)/ref(asset,enterbars)>0.02 then sell(1,0,marektr);


--  作者:深海漫游
--  发布时间:2016/5/24 13:38:55
--  
REF 函数在逐K线模式下不能直接在IF控制语句之内引用。请参阅帮助公式部分的解决方案。
--  作者:深海漫游
--  发布时间:2016/5/24 13:39:08
--  

这个程序有问题啊


--  作者:jinzhe
--  发布时间:2016/5/24 13:40:47
--  

if (asset-ref(asset,enterbars))/ref(asset,enterbars)>0.02  then sell(1,0,marketr);

if (ref(asset,enterbars)-asset)/ref(asset,enterbars)>0.02 then sellshort(1,0,marketr);

 

把我写的不要放在你的代码框架里面,放在你代码最后面


--  作者:深海漫游
--  发布时间:2016/5/24 15:07:22
--  

INPUT:N1(6,2,12,1)
LC := REF(CLOSE,1);
RSI1:=SMA(MAX(CLOSE-LC,0),N1,1)/SMA(ABS(CLOSE-LC),N1,1)*100;


KD:=RSI1<N1 ;

 IF KD AND HOLDING<=0 THEN
 BEGIN BUY(HOLDING=0,100%,MARKETR);
 END
 
if (asset-ref(asset,enterbars))/ref(asset,enterbars)>0.02  then begin sell(1,0,marketr);
if (ref(asset,enterbars)-asset)/ref(asset,enterbars)>0.02 then begin sellshort(1,0,marketr);
 


--  作者:深海漫游
--  发布时间:2016/5/24 15:07:47
--  

老师帮我看看是不是这样。能不能帮我修改下


--  作者:jinzhe
--  发布时间:2016/5/24 15:09:18
--  

INPUT:N1(6,2,100,10),N2(12,2,100,10),N3(24,2,100,10);
LC := REF(CLOSE,1);
RSI1:=SMA(MAX(CLOSE-LC,0),N1,1)/SMA(ABS(CLOSE-LC),N1,1)*100;
RSI2:=SMA(MAX(CLOSE-LC,0),N2,1)/SMA(ABS(CLOSE-LC),N2,1)*100;
RSI3:=SMA(MAX(CLOSE-LC,0),N3,1)/SMA(ABS(CLOSE-LC),N3,1)*100;

KD:=RSI1<20 ;
PD:=RSI1>80;

 IF KD AND HOLDING<=0 THEN
 BEGIN
 BUY(HOLDING=0,100%,MARKETR),pertrader;
 END
 
 IF pd AND HOLDING>=0 THEN
 BEGIN
 SELL(HOLDING>0,0,MARKETR);

 END
if (asset-ref(asset,enterbars))/ref(asset,enterbars)>0.02  then sell(1,0,marketr);

if (ref(asset,enterbars)-asset)/ref(asset,enterbars)>0.02 then sellshort(1,0,marketr);


--  作者:深海漫游
--  发布时间:2016/5/24 16:37:22
--  
ok,谢谢老师