以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (http://222.73.7.161/bbs/index.asp) -- 公式模型编写问题提交 (http://222.73.7.161/bbs/list.asp?boardid=4) ---- 请老师帮忙将文华模型改写成金字塔模型,谢谢了! (http://222.73.7.161/bbs/dispbbs.asp?boardid=4&id=168421) |
-- 作者:云潇逸士 -- 发布时间:2019/2/25 16:36:44 -- 请老师帮忙将文华模型改写成金字塔模型,谢谢了! 请老师帮忙将下面文华跨周期模型改写成金字塔模型,在此谢谢了!
TXYHXJSJK(被引用指标) RSV:=(CLOSE-LLV(LOW,9))/(HHV(HIGH,9)-LLV(LOW,9))*100;//收盘价与N周期最低值做差,N周期最高值与N周期最低值做差,两差之间做比值。 PB1:=(EMA(CLOSE,4)+MA(CLOSE,4*2)+MA(CLOSE,4*4))/3;
------------------------------------------------------ 跨周期指标 #IMPORT [ DAY,1,TXYHXJSJK ] AS VAR1
再次谢谢老师了! |
-- 作者:FireScript -- 发布时间:2019/2/25 17:15:51 -- 处理中,请注意本帖的回复。 |
-- 作者:FireScript -- 发布时间:2019/2/26 9:55:29 -- 被引用指标代码不需要动。把代码复制到一个单独指标中编译下即可: 第二部分: ZD:STKINDI(\'\',\'TXYHXJSJK.BK1\',0,6,0); ZK:STKINDI(\'\',\'TXYHXJSJK.SK1\',0,6,0); RSV:=(CLOSE-LLV(LOW,30))/(HHV(HIGH,8)-LLV(LOW,54))*100; K:=SMA(RSV,1,80); D:=SMA(K,9,58); MA1:=MA(C,19); MA2:=MA(C,15); ATR:=ABS(CLOSE-REF(CLOSE,22))/(HHV(HIGH,6)-LLV(L,55))*100; AA1:=ABS(C-REF(C,1))>=REF(HHV(ABS(H-L),42),1);// AA2:=ABS(C-REF(C,2))>= REF(HHV(ABS(C-REF(C,2)),48),1); TMP:=STD(C,17); KPJ:=VALUEWHEN(DATE<>REF(DATE,1),O); SPJ:=VALUEWHEN(DATE<>REF(DATE,1),C); SG:=MAX(KPJ,SPJ)+10/100*12*TMP; XG:=MIN(KPJ,SPJ)-10/100*8*TMP; if ISUP&&(AA1||AA2)&& (ENTERBARS+1)>4&&D>1&&ATR>21 AND TYPE(1)=3 then sellshort(holding<0,holding,market); if ISUP&&(AA1||AA2)&& ((ENTERBARS+1)>9 or ENTERBARS=-1)&&D>1&&ATR>51 AND (TYPE(1)<>3 or type(1)=0)&&ZD then buy(holding=0,1,market); if ISDOWN&&(AA1||AA2)&& (ENTERBARS+1)>15&&D<99&&ATR>4 AND TYPE(1)=1 then sell(holding>0,holding,market); if ISDOWN&&(AA1||AA2)&& ((ENTERBARS+1)>21 or ENTERBARS=-1)&&D<99&&ATR>1 AND (TYPE(1)<>1 or type(1)=0)&&ZK then buyshort(holding=0,1,market); if C>SG&&ATR>24 && MA1>MA2&&C>ENTERPRICE AND TYPE(1)=3 then sellshort(holding<0,holding,market); if C>SG&&ATR>38 && MA1>MA2&&C>ENTERPRICE AND TYPE(1)<>3&&ZD then buy(holding=0,1,market); if C<XG&&ATR>6 && MA1<MA2&&C<ENTERPRICE AND TYPE(1)=1 then sell(holding>0,holding,market);; if C<XG&&ATR>9 && MA1<MA2&&C<ENTERPRICE AND TYPE(1)<>1&&ZK then buyshort(holding=0,1,market); if C>=ENTERPRICE*(1+0.0001*132)then sellshort(holding<0,holding,market); if C<=ENTERPRICE*(1-0.0001*137) then sell(holding>0,holding,market); if C<ENTERPRICE*(1-0.001*149)then sellshort(holding<0,holding,market);; if C>ENTERPRICE*(1+0.001*150) then sell(holding>0,holding,market);; if C<hhv(h,ENTERBARS+1)*(1-0.001*105) then sell(holding>0,holding,market); if C>llv(l,ENTERBARS+1)*(1+0.001*105) then sellshort(holding<0,holding,market); 仅供参考。 |
-- 作者:云潇逸士 -- 发布时间:2019/2/26 10:42:42 -- 谢谢老师! |
-- 作者:云潇逸士 -- 发布时间:2019/2/26 16:16:40 -- #IMPORT[DAY,1,RCOMAI] AS VAR2
老师您好,我模仿您将上面文华语句改成下面的形式,15分钟跨周期模型,请问对吗? RC:=STKINDI(\'\',\' RCOMAI.RC\',0,6,0); |
-- 作者:FireScript -- 发布时间:2019/2/26 16:18:24 -- 对的。是这样的。不过 RCOMAI这个必须单独建个指标才行,否则你引用不到。 |
-- 作者:云潇逸士 -- 发布时间:2019/2/26 16:19:22 -- 我改了一个文华15分钟跨周期模型成金字塔的,可交易信号有点乱,和文华的不一致,晕。。 |
-- 作者:FireScript -- 发布时间:2019/2/26 16:50:17 -- 软件不一样,代码逻辑一样情况下也可能有差异,因为软件的实现机制本身肯定有差异的。并且信号之类情况的可能还收到数据量,复权以及其他设置的影响。 |