老师写一个指标 (文华财经wh9)

投资者咨询:老师写一个指标 (文华财经wh9)
来源:文华财经  日期:2018-7-23 19:54
 最近3根K线(包含当前K线)中,当前K线K,前一根K线K1,前2根K线K2 , 

条件:1.  K1最高价<K最高价(当前最新价)  
        2. K1最低价<K2最低价,     

         K2均价W1=(最高价-最低价)/2      

        3. K最高价(当前价)大于W1,

则  标记当前K线K为B, 



反之,则当前K线标记为S。 


       
技术人员回复
日期:2018-7-23 19:58
以b为例,很容易满足的

W1:=(REF(H,2)-REF(L,2))/2;
A:=REF(H,1)<H&&REF(L,1)<REF(L,2)&&H>W1;
DRAWTEXT(A,H,'B'),COLORGREEN,FONTSIZE18;

投资者咨询:老师写一个指标 (文华财经wh9)
来源:文华财经  日期:2018-7-23 19:54
 然后以相反的条件标记S 
技术人员回复
日期:2018-7-23 20:28
 这样:

W1:=(REF(H,2)-REF(L,2))/2;
A:=REF(H,1)<H&&REF(L,1)<REF(L,2)&&H>W1;
DRAWTEXT(A,H,'B'),COLORGREEN,FONTSIZE18;
B:=REF(L,1)>L&&REF(H,1)>REF(H,2)&&L>W1;
DRAWTEXT(B,H,'S'),COLORRED,FONTSIZE18;

投资者咨询:老师写一个指标 (文华财经wh9)
来源:文华财经  日期:2018-7-23 19:54
 你好,麻烦再帮我优化下, 出现B形态到出现S形态之间的 满足条件出现的B不用需要标记,


同理,出现S形态到出现B形态之间 的S 不需要标记.   




技术人员回复
日期:2018-7-23 20:39
 参考;

W1:=(REF(H,2)-REF(L,2))/2;
A:=REF(H,1)<H&&REF(L,1)<REF(L,2)&&H>W1;
B:=REF(L,1)>L&&REF(H,1)>REF(H,2)&&L>W1;
DRAWTEXT(A&&COUNT(A,BARSLAST(B))=1,H,'B'),COLORGREEN,FONTSIZE18;

DRAWTEXT(B&&COUNT(B,BARSLAST(A))=1,H,'S'),COLORRED,FONTSIZE18;