根据1小时周期的条件画线 (文华财经)

投资者咨询:根据1小时周期的条件画线 (文华财经)
来源:文华财经  日期:2020-11-13 14:44
 DRAWSL((REFX(DAYBARPOS=1,1)||ISLASTBAR)&&MAX(C,OO)<HH1&&MIN(C,OO)>LL1,HHV(H,DAYBARPOS),0,-DAYBARPOS+1,0,COLORWHITE);
DRAWSL((REFX(DAYBARPOS=1,1)||ISLASTBAR)&&MAX(C,OO)<HH1&&MIN(C,OO)>LL1,LLV(L,DAYBARPOS),0,-DAYBARPOS+1,0,COLORWHITE);

这个指标是根据日线的条件,在更小周期进行划线。

现在要使其根据1小时周期的条件,在1小时以下进行划线,要怎么改呢
   
技术人员回复
日期:2020-11-13 14:45
 
提供完整源码,帮您分析下。
投资者咨询:根据1小时周期的条件画线 (文华财经)
来源:文华财经  日期:2020-11-13 14:44
有三种以日线为条件的划线方式。

分别是

第一种
HH:=HHV(H,DAYBARPOS);
LL:=LLV(L,DAYBARPOS);
HH1:=REF(HH,DAYBARPOS);
LL1:=REF(LL,DAYBARPOS);
OO:=VALUEWHEN(DAYBARPOS=1,O);
DRAWSL((REFX(DAYBARPOS=1,1)||ISLASTBAR)&&MAX(C,OO)<HH1&&MIN(C,OO)>LL1,HHV(H,DAYBARPOS),0,-DAYBARPOS+1,0,COLORWHITE);
DRAWSL((REFX(DAYBARPOS=1,1)||ISLASTBAR)&&MAX(C,OO)<HH1&&MIN(C,OO)>LL1,LLV(L,DAYBARPOS),0,-DAYBARPOS+1,0,COLORWHITE);

第二种

N:=DAYBARPOS;
HH2:=HHV(H,N);
LL2:=LLV(L,N);
A:=MAX(HH2-MAX(REF(O,N-1),C),MIN(REF(O,N-1),C)-LL2);
ST:=ABS(REF(O,N-1)-C);
DRAWSL1((REFX(N=1,1)||ISLASTBAR)&&A>1.618*ST,HH2,0,N,1),COLORRED;
DRAWSL1((REFX(N=1,1)||ISLASTBAR)&&A>1.618*ST,LL2,0,N,1),COLORGREEN;

第三种

N1:=DAYBARPOS;
HH3:=HHV(H,N1);
LL3:=LLV(L,N1);
ZF:=(C-REF(C,N1))/REF(C,N1)*100;
Y1:=C>REF(O,N1-1);
Y2:=C<REF(O,N1-1);
DRAWSL1((REFX(N1=1,1)||ISLASTBAR)&&REF(Y1,N1)&&Y2&&REF(O,N1-1)>REF(C,N1)&&ZF>-0.382,HH,0,N1,1),COLORBLUE;
DRAWSL1((REFX(N1=1,1)||ISLASTBAR)&&REF(Y1,N1)&&Y2&&REF(O,N1-1)>REF(C,N1)&&ZF>-0.382,LL,0,N1,1),COLORBLUE;
DRAWSL1((REFX(N1=1,1)||ISLASTBAR)&&REF(Y2,N1)&&Y1&&REF(O,N1-1)<REF(C,N1)&&ZF<0.382,HH,0,N1,1),COLORBLUE;
DRAWSL1((REFX(N1=1,1)||ISLASTBAR)&&REF(Y2,N1)&&Y1&&REF(O,N1-1)<REF(C,N1)&&ZF<0.382,LL,0,N1,1),COLORBLUE;
投资者咨询:根据1小时周期的条件画线 (文华财经)
来源:文华财经  日期:2020-11-13 14:44
 要老师分别把这三个以日线为条件的划线,全部变成以1小时为条件的。

如果可以的话在写一个以4小时为条件的。
技术人员回复
日期:2020-11-13 14:50

下面编写是1小时的,4小时把VV变量中的数值修改为4。


第一:

VV:="HOUR$1$V";
N:=BARSLAST(VV<>REF(VV,1))+1;
HH:=HHV(H,N);
LL:=LLV(L,N);
HH1:=REF(HH,N);
LL1:=REF(LL,N);
OO:=VALUEWHEN(N=1,O);
DRAWSL((REFX(N=1,1)||ISLASTBAR)&&MAX(C,OO)<HH1&&MIN(C,OO)>LL1,HHV(H,N),0,-N+1,0,COLORWHITE);
DRAWSL((REFX(N=1,1)||ISLASTBAR)&&MAX(C,OO)<HH1&&MIN(C,OO)>LL1,LLV(L,N),0,-N+1,0,COLORWHITE);

 
第二:

VV:="HOUR$1$V";
N:=BARSLAST(VV<>REF(VV,1))+1;
HH2:=HHV(H,N);
LL2:=LLV(L,N);
A:=MAX(HH2-MAX(REF(O,N-1),C),MIN(REF(O,N-1),C)-LL2);
ST:=ABS(REF(O,N-1)-C);
DRAWSL1((REFX(N=1,1)||ISLASTBAR)&&A>1.618*ST,HH2,0,N,1),COLORRED;
DRAWSL1((REFX(N=1,1)||ISLASTBAR)&&A>1.618*ST,LL2,0,N,1),COLORGREEN;


第三:

VV:="HOUR$1$V";
N1:=BARSLAST(VV<>REF(VV,1))+1;
HH:=HHV(H,N1);
LL:=LLV(L,N1);
ZF:=(C-REF(C,N1))/REF(C,N1)*100;
Y1:=C>REF(O,N1-1);
Y2:=C<REF(O,N1-1);
DRAWSL1((REFX(N1=1,1)||ISLASTBAR)&&REF(Y1,N1)&&Y2&&REF(O,N1-1)>REF(C,N1)&&ZF>-0.382,HH,0,N1,1),COLORBLUE;
DRAWSL1((REFX(N1=1,1)||ISLASTBAR)&&REF(Y1,N1)&&Y2&&REF(O,N1-1)>REF(C,N1)&&ZF>-0.382,LL,0,N1,1),COLORBLUE;
DRAWSL1((REFX(N1=1,1)||ISLASTBAR)&&REF(Y2,N1)&&Y1&&REF(O,N1-1)<REF(C,N1)&&ZF<0.382,HH,0,N1,1),COLORBLUE;
DRAWSL1((REFX(N1=1,1)||ISLASTBAR)&&REF(Y2,N1)&&Y1&&REF(O,N1-1)<REF(C,N1)&&ZF<0.382,LL,0,N1,1),COLORBLUE;

 
投资者咨询:根据1小时周期的条件画线 (文华财经)
来源:文华财经  日期:2020-11-13 14:44
 谢谢老师。

如果要加入一个划线条件,比如1小时周期,除了满足已写的条件,还要满足  当MACD的 快线在慢线之下 所对应的K线,才去1小时以下划线。
投资者咨询:根据1小时周期的条件画线 (文华财经)
来源:文华财经  日期:2020-11-13 14:44
 三个都要加哦
技术人员回复
日期:2020-11-13 15:06
 
分析了一下,您是想要在1小时以下周期引用1小时周期的MACD指标进行判断,

wh6是看盘软件,提供简易的跨周期函数,可以跨周期引用高开低收等基础数据,但是不支持直接跨周期引用指标数值。

这类跨周期的思路,可以考虑使用wh9软件实现,wh9兼顾看盘分析的需求。

Wh9是收费软件,下载链接:



或者在wh6软件中,通过建立多窗口页面,插入1小时以下及1小时周期对比来实现。
投资者咨询:根据1小时周期的条件画线 (文华财经)
来源:文华财经  日期:2020-11-13 14:44
 文华8怎么建立多窗口页面呢?
技术人员回复
日期:2020-11-13 15:15
 
wh8是量化交易软件,不支持自设页面多窗口这样的看盘功能,

您的需求可以在wh6或者wh7看盘软件中建立多窗口页面实现;或者使用wh9软件编写实现。

您参考8楼给您的回复再理解下。