以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  公式模型编写问题提交  (http://weistock.com/bbs/list.asp?boardid=4)
----  drawline函数是否有问题,与通达信上显示完全不一致  (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=184262)

--  作者:lcgs005
--  发布时间:2021/2/11 12:13:43
--  drawline函数是否有问题,与通达信上显示完全不一致
下述公式在通达信上可以完全正确的划出高低点的连线,而移植到金字塔上则无法划出正确的高低点连线,看是否drawline的函数问题? 另,如何才能实现与通达信一样的画线效果?
主图叠加完整代码如下:
{波段高低点}
图片点击可在新窗口打开查看此主题相关图片如下:金字塔的显示.png
图片点击可在新窗口打开查看

图片点击可在新窗口打开查看此主题相关图片如下:通达信的显示.png
图片点击可在新窗口打开查看
KU1:IF(HIGH=HHV(HIGH,3),1,0),nodraw;//当日高点为3日高点则返回1
KD1:IF(LOW=LLV(LOW,3),1,0),nodraw;
UL:IF(REF(KU1,2)=1 AND REF(KU1,1)=0 AND KU1=0,REF(HIGH,2),REF(HIGH,2+BARSLAST(REF(KU1,2)=1 AND REF(KU1,1)=0 AND KU1=0))),nodraw;
DL:IF(REF(KD1,2)=1 AND REF(KD1,1)=0 AND KD1=0,REF(LOW,2),REF(LOW,2+BARSLAST(REF(KD1,2)=1 AND REF(KD1,1)=0 AND KD1=0))),nodraw;
HV:H>UL AND H>REF(H,1),nodraw ;
LV:L<DL AND L<REF(L,1),nodraw ;
GP:BARSLAST(HV),nodraw;
DP:BARSLAST(LV),nodraw;
IP:IF(GP=0,DP,GP)>3,nodraw;
HV1:HV AND IP AND H>=HHV(H,BARSLAST(LV)),nodraw;
LV1:LV AND IP AND L<=LLV(L,BARSLAST(HV)),nodraw;
DRAWLINE(LV1,LOW,HV1,HIGH,0),COLORRED,LINETHICK2;
DRAWLINE(HV1,HIGH,LV1,LOW,0),COLORGREEN,LINETHICK2;

--  作者:FexTel
--  发布时间:2021/2/15 13:19:27
--  
麻烦给下通达信的源码,我看下通达信的效果显示
--  作者:lcgs005
--  发布时间:2021/2/15 21:49:46
--  
//源码如下,通达信,金字塔可以通用

KU1:IF(HIGH=HHV(HIGH,3),1,0),nodraw;//当日高点为3日高点则返回1
KD1:IF(LOW=LLV(LOW,3),1,0),nodraw;
UL:IF(REF(KU1,2)=1 AND REF(KU1,1)=0 AND KU1=0,REF(HIGH,2),REF(HIGH,2+BARSLAST(REF(KU1,2)=1 AND REF(KU1,1)=0 AND KU1=0))),nodraw;
DL:IF(REF(KD1,2)=1 AND REF(KD1,1)=0 AND KD1=0,REF(LOW,2),REF(LOW,2+BARSLAST(REF(KD1,2)=1 AND REF(KD1,1)=0 AND KD1=0))),nodraw;
HV:H>UL AND H>REF(H,1),nodraw ;
LV:L<DL AND L<REF(L,1),nodraw ;
GP:BARSLAST(HV),nodraw;
DP:BARSLAST(LV),nodraw;
IP:IF(GP=0,DP,GP)>3,nodraw;
HV1:HV AND IP AND H>=HHV(H,BARSLAST(LV)),nodraw;
LV1:LV AND IP AND L<=LLV(L,BARSLAST(HV)),nodraw;
DRAWLINE(LV1,LOW,HV1,HIGH,0),COLORRED,LINETHICK2;
DRAWLINE(HV1,HIGH,LV1,LOW,0),COLORGREEN,LINETHICK2;

--  作者:lcgs005
--  发布时间:2021/2/19 10:44:07
--  
您测试了吗?
是不是出现同样的问题

--  作者:FireScript
--  发布时间:2021/2/19 11:24:47
--  
 不是画线函数问题。是一些更隐秘的区别导致的。在涉及到无效数的处理上 软件有差异。导致后续的判断逻辑不一致了。

--  作者:lcgs005
--  发布时间:2021/2/19 11:32:00
--  
那,要处理成通行的一致么?
或者,说下具体的区别在哪里,看如何通过附加的代码来打个补丁?

--  作者:FireScript
--  发布时间:2021/2/19 13:48:43
--  
 还是不对。不是中间过程处理问题,无效数处理上影响不大。是画线函数的实现效果有差异。
比如下面这个:
红线的逻辑 按照描述应该是从LV1满足时候画到HV1  但是你看它这个。其实在HV1满足时候并没有停止画线。


图片点击可在新窗口打开查看此主题相关图片如下:temp.png
图片点击可在新窗口打开查看

中间的位置 HV1已经满足了。

图片点击可在新窗口打开查看此主题相关图片如下:temp.png
图片点击可在新窗口打开查看

--  作者:FireScript
--  发布时间:2021/2/19 13:52:13
--  
所以现在就是它这个画线函数 和我们的不一样,然后它那个函数的说明 不足以搞清楚上面那个情况到底是怎么回事。

--  作者:lcgs005
--  发布时间:2021/2/19 22:29:24
--  
我刚测了一下,大智慧,同花顺,文华与通达信是保持一致的
--  作者:FireScript
--  发布时间:2021/2/20 11:11:54
--  
 确认了下。这个没办法转换。因为他们的画线是未来,而我们的画线不是这种模式的。目前情况来看是画不出一样的效果的了。