以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (http://weistock.com/bbs/index.asp) -- 公式模型编写问题提交 (http://weistock.com/bbs/list.asp?boardid=4) ---- 请问为什么后面macd金叉以后KD的K值,在第一个K值到了25以下后,后面还会有开多信号呢,哪里写的有问题啊 (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=96541) |
-- 作者:洋葱猪肉卷 -- 发布时间:2016/4/20 15:05:33 -- 请问为什么后面macd金叉以后KD的K值,在第一个K值到了25以下后,后面还会有开多信号呢,哪里写的有问题啊 variable:n=0,m=0; diff:=stkindi(\'\',\'macd.diff\',0,24,4); dea:=stkindi(\'\',\'macd.dea\',0,24,4); k:=stkindi(\'\',\'kdj.k\',0,datatype); d:=stkindi(\'\',\'kdj.d\',0,datatype); 金叉:=cross(diff,dea); 死叉:=cross(dea,diff); if 金叉 or 死叉 then begin n:=0; m:=0; end if k<25 then n:=n+1; if k>75 then m:=m+1; if n=1 then begin buy(holding<=0,1,marketr); end if C-AVGENTERPRICE>10 then begin sell(1,0,marketr); end IF AVGENTERPRICE-C>6 THEN BEGIN SELL(1,HOLDING,MARKET); end 请问为什么后面macd金叉以后KD的K值,在第一个K值到了25以下后,后面还会有开多信号呢,哪里写的有问题啊
|
-- 作者:jinzhe -- 发布时间:2016/4/20 15:10:19 -- 说明后面的k没有小于25的,导致n的值一直是1,所以平仓之后满足条件会再开仓 |
-- 作者:洋葱猪肉卷 -- 发布时间:2016/4/20 15:17:52 -- 请问那怎么写啊,就是金叉后K小于25只做一次,那怎么写啊 |
-- 作者:jinzhe -- 发布时间:2016/4/20 15:21:54 -- if n=1 and ref(n,1)=0 then begin
buy(holding<=0,1,marketr);
end
就改这一句
|
-- 作者:洋葱猪肉卷 -- 发布时间:2016/4/20 15:22:52 -- 好的,谢谢 |