Rss & SiteMap

金字塔客服中心 - 专业程序化交易软件提供商 http://www.weistock.com/bbs/

专业程序化软件提供商
共8 条记录, 每页显示 10 条, 页签: [1]
[浏览完整版]

标题:测试正常的公式没有信号显示

1楼
qkl586 发表于:2010/8/19 10:22:19

我根据指南中单均线模型修改了其它公式,结果图表上没有信号显示,问题出在哪里呢?请明示。

单均线模型:

INPUT:N(15,1,100,1);
MAN:=MA(CLOSE,N);
SP :=TIME>=145500 OR (CLOSE<MAN AND BARSLAST(CROSS(MAN,CLOSE ))>=3);

BP :=TIME>=145500 OR (CLOSE>MAN AND BARSLAST(CROSS(CLOSE,MAN ))>=3);

BK :=TIME>=091500 AND TIME<145500 AND CLOSE>MAN AND BARSLAST(CROSS(CLOSE,MAN ))>=3;

SK :=TIME>=090000 AND TIME<145500 AND CLOSE<MAN AND BARSLAST(CROSS(MAN,CLOSE ))>=3; 
{平多} EXITLONG: SP,TFILTER;
{平空} EXITSHORT: BP,TFILTER;
{开多} ENTERLONG: BK,TFILTER;

{开空} ENTERSHORT: SK,TFILTER;

拟修改的模型修改前(可以正常操作):
RSV:=(CLOSE-LLV(LOW,N))/(HHV(HIGH,N)-LLV(LOW,N))*100;
K:=SMA(RSV,P1,1);
D:=SMA(K,P2,1);
{平多} EXITLONG: CROSS(d,k),ORDERQUEUE,TFILTER;
{平空} EXITSHORT: CROSS(k,d),ORDERQUEUE,TFILTER;
{开多} ENTERLONG: CROSS(k,d),ORDERQUEUE,TFILTER;

{开空} ENTERSHORT: CROSS(d,k),ORDERQUEUE,TFILTER;

 

修改后(无信号显示):

 

RSV:=(CLOSE-LLV(LOW,N))/(HHV(HIGH,N)-LLV(LOW,N))*100;
K:=SMA(RSV,P1,1);
D:=SMA(K,P2,1);
{平多} EXITLONG: CROSS(d,k)AND BARSLAST(CROSS(d,k))>=3,ORDERQUEUE,TFILTER;

{平空} EXITSHORT: CROSS(k,d)AND BARSLAST(CROSS(k,d))>=3,ORDERQUEUE,TFILTER;

{开多} ENTERLONG: CROSS(k,d)AND BARSLAST(CROSS(k,d))>=3,ORDERQUEUE,TFILTER;

{开空} ENTERSHORT: CROSS(d,k)AND BARSLAST(CROSS(d,k))>=3,ORDERQUEUE,TFILTER; 

 

2楼
董小球 发表于:2010/8/19 11:51:37
貌似是你的K和d根本没有交叉 自然没信号了
3楼
qkl586 发表于:2010/8/19 12:27:56
把公式中的“AND BARSLAST(CROSS(d,k))>=3”去掉就有信号
4楼
董小球 发表于:2010/8/19 12:44:44
哦 明白了 ENTER 这种交易函数很简单 别用复合条件了,你吧BARSLAST条件放到外面去,就只留一个CROSS条件在ENTER函数里 就可以了 要么 你就用 BUY SELL 等交易函数
5楼
fly 发表于:2010/8/19 16:38:17

用这几行语句测试一下,注意看J和I的输出值可不可以同时为真(即,非0),楼主就知道问题出在哪里了。

 

RSV:=(CLOSE-LLV(LOW,N))/(HHV(HIGH,N)-LLV(LOW,N))*100;
K:=SMA(RSV,P1,1);
D:=SMA(K,P2,1);

 

j:BARSLAST(CROSS(k,d)),linethick0;
i:CROSS(k,d),linethick0;

6楼
qkl586 发表于:2010/8/19 22:11:00
J的输出值为5,I为0,问题找到了,但是怎么处理呢?在论坛中没有搜索到相关的解决办法。是不是要改变I的条件才能出来信号?
7楼
fly 发表于:2010/8/20 9:27:27

两个条件在所有周期上,都是-----一个为真时另一个为假。您不能这么设置条件呀!

 

{平空} EXITSHORT: CROSS(k,d) AND BARSLAST(CROSS(k,d))>=3,ORDERQUEUE,TFILTER;

 

在一根K线上,您的条件1--CROSS(k,d)和条件2--BARSLAST(CROSS(k,d))>=3,永远不可能同时为真

 

原因:当条件CROSS(k,d)成立的那根K线上,条件BARSLAST(CROSS(k,d))====0

8楼
qkl586 发表于:2010/8/21 13:45:25
明白了,谢谢!
共8 条记录, 每页显示 10 条, 页签: [1]


Powered By Dvbbs Version 8.3.0
Processed in 0.01563 s, 3 queries.