海龟交易法,如何迭代仓单基本单位N? (文华财经WH8赢智V8.2)

投资者咨询:海龟交易法,如何迭代仓单基本单位N? (文华财经WH8赢智V8.2)
来源:文华财经  日期:2018-7-12 18:35
 

“由于海龟系统涉及到的变量计算和操作比较多,因此下文把各个变量的计算及一些操作 出来进行说明

N的计算方式:N=(19×PDN+TR)/20,其中,PDN是指前一天的N,
TR(实际范围)=max(H-L,H-PDC,PDC-L)
式中:
H-当日最高价
L-当日最低价
PDC-前个交易日的收盘价
在本策略中,用于迭代的第一个N是采用days天内数据可用的那些天的TR的平均值 ”

请问上文中的迭代如何用代码实现? 

技术人员回复
日期:2018-7-12 19:04
 方法如下

VARIABLE:NN:=0;
TR : MAX(MAX((HIGH-LOW),ABS(REF(CLOSE,1)-HIGH)),ABS(REF(CLOSE,1)-LOW));//求最高价减去最低价,一个周期前的收盘价减去最高价的绝对值,一个周期前的收盘价减去最低价的绝对值,这三个值中的最大值
ATR : MA(TR,26),COLORYELLOW;//求N个周期内的TR的简单移动平均
IF BARPOS=2 THEN
BEGIN
NN:=TR;
END
IF BARPOS>2 THEN
BEGIN
NN:=(19*NN+TR)/20;
END
N:NN;


但是原文中对N的初始计算并没有说,请您自行添加
投资者咨询:海龟交易法,如何迭代仓单基本单位N? (文华财经WH8赢智V8.2)
来源:文华财经  日期:2018-7-12 18:35
 
请问为何 IF语句中 BARPOS=2,而不是BARPOS=1?第一个N的值是TR平均,第二个值就开始迭代了
技术人员回复
日期:2018-7-13 9:55
 因为不知道第一根的计算方式,第一根k线中TR是没有值的,所以就从第二根开始算了

您可以自行添加第一根的计算方法,定义方式都是一样的