1.通达信指标里怎样表示“星期五”、“星期三”
星期五:WEEKDAY=5;
星期三:WEEKDAY=3;
如果是想画图的话我写一个周五的吧:
星期五:=IF(WEEKDAY=5,1,0);
DRAWTEXT(星期五,L,'星期五'),COLORMAGENTA;
图形如下:
2.请高人帮忙编个通达信公式,在每月中第一周的最高价在主图上划横线
要使用日期和星期函数计算时差,有点复杂,给点时间看能不能。
亲:如何定义每月的第一周?,一、以自然周的交易日计,就存在每月第一周的天数不一的问题,如:2013年11月1日是星期五,这个月的第一周就只有一个交易日;2013年8月1日是星期四,这个月的第一周就只有2个交易日;2012年2月1日是星期三,这个月的第一周就是3个交易,这样的例子还很多……,这样的话,在编写公式时就存在一定的难度,而且,公式代码增多,将影响程序运行速度。二,如果,以每个月的前五个交易日来定义一周的交易日的话,编写公式也就容易得多。 编写说明: 1、以每个月的前5个交易的K线最高价作为画线标记,并记上了该最高价的数字。 2、要求每个月的前个交易的最高价的位置,必须使用“未来函数”REFX,此“未来函数”只在最后一个月即当前月的前5天内有漂移象,到了第6个交易日就会准确定位了。 3、对每个要作标记的点位画线(画线程序仍属未来函数),还是最复杂活,不能准确画出,程序代码将会成垒集的灾难,为解决这个问题,使用了调用BMP的图标功能,即事选制作好一张画好线的图,保存文件名为:HHH.BMP,保存位置在通达信软件的X:\new_hongxin_v6_10\T0002\signals 目录中,以调用之。 4、软件版本必须是6.10或以上版本。 通过以上处理,使指标公式代码更简短。 参考公式指标代码如下: {+++++各周期移动平均线+++++} MA1:MA(CLOSE,10); MA2:MA(CLOSE,20); MA3:MA(CLOSE,30); MA4:MA(CLOSE,60); MA5:MA(CLOSE,120); {++++确定每月的交易日++++} CS:=DAY-REF(DAY,1),NODRAW; DAT:BARSLAST(CS<0)NODRAW; {++++++++++确定每月前五个交易的最高价并作标记和填定数据++++++++++} HHV1:DRAWBMP(DAT=0 AND H>REFX(H,1)AND H>REFX(H,2)AND H>REFX(H,3)AND H>REFX(H,4) ,H*1.006,'HHH'); Z1:DRAWNUMBER(DAT=0 AND H>REFX(H,1)AND H>REFX(H,2)AND H>REFX(H,3)AND H>REFX(H,4) ,H*1.006,H)DRAWABOVE; HHV2:DRAWBMP(DAT=1 AND H>REF(H,1)AND H>REFX(H,1)AND H>REFX(H,2)AND H>REFX(H,3) ,H*1.006,'HHH'); Z2:DRAWNUMBER(DAT=1 AND H>REF(H,1)AND H>REFX(H,1)AND H>REFX(H,2)AND H>REFX(H,3) ,H*1.006,H)DRAWABOVE; HHV3:DRAWBMP(DAT=2 AND H>REF(H,1)AND H>REF(H,2)AND H>REFX(H,1)AND H>REFX(H,2) ,H*1.006,'HHH'); Z3:DRAWNUMBER(DAT=2 AND H>REF(H,1)AND H>REF(H,2)AND H>REFX(H,1)AND H>REFX(H,2) ,H*1.006,H)DRAWABOVE; HHV4:DRAWBMP(DAT=3 AND H>REF(H,1)AND H>REF(H,2)AND H>REF(H,3)AND H>REFX(H,1) ,H*1.006,'HHH'); Z4:DRAWNUMBER(DAT=3 AND H>REF(H,1)AND H>REF(H,2)AND H>REF(H,3)AND H>REFX(H,1) ,H*1.006,H)DRAWABOVE; HHV5:DRAWBMP(DAT=4 AND H>REF(H,1)AND H>REF(H,2)AND H>REF(H,3)AND H>REF(H,4) ,H*1.006,'HHH'); Z5:DRAWNUMBER(DAT=4 AND H>REF(H,1)AND H>REF(H,2)AND H>REF(H,3)AND H>REF(H,4) ,H*1.006,H)DRAWABOVE;
转载请注明出处育才学习网 » 通达信每个月的第三个星期五怎么写