1分钟模型,如果是k线的收盘价,上穿一根均线到下穿一根均线的周期,计算这个周期的hhv,要是赶上一个涨停,那么1分k肯定超360根了呀,这种情况我需要怎么处理,除了增加k线计算的根数,还有没有什么更好的办法。M1:=EMA(CLOSE,P1);
M3:=EMA(CLOSE,P3);
大均:=max(m1,m3);
小均:=min(m1,m3);
上穿大值均:=cross(close,大均);
下穿小值均:=cross(小均,close);
收过大均:=SFILTER( 上穿大值均,下穿小值均 ),NOAXIS,LINETHICK0;
收过小均:=SFILTER( 下穿小值均,上穿大值均 ),NOAXIS,LINETHICK0;
每穿一回间隔周期:=BARSLAST(收过大均 or 收过小均)+1,LINETHICK0,NOAXIS;
//////////////////////////////////////////////////////////////////////////////////////////
间隔周期:=ref(每穿一回间隔周期,1),LINETHICK0,NOAXIS;
下穿均线时前高点:=hhv(high,间隔周期+1)LINETHICK0,NOAXIS;
上穿均线时前低点:=llv(low,间隔周期+1)LINETHICK0,NOAXIS;
前低点:=VALUEWHEN(收过大均,上穿均线时前低点),noaxis,linethick0;
前高点:=VALUEWHEN(收过小均,下穿均线时前高点),noaxis,linethick0;
上面的代码是表示k收盘每下穿均线时,取前高点,每上穿均线时,取前低点,牵扯到了k线计算的根数问题,比如上穿均线后直接涨停了,连续涨停3天,然后再下穿均线,那就是一千多根1分钟k线,肯定超360根了,我要是选择使用5000根k线计算数据,和选择使用360根k线计算数据,速度差多少?
请教一个取前高点更好的代码表达方式,既能在360根k线以内,又能把前高点求出来的方法。
数据稳定肯定是要通过数据来解决的,使用数据不够则必须要加大使用数据的量。
数据越多计算越慢
既想要数据多,又想要不影响计算速度,是不可能的
明白老师说的,我还想问下,使用360根k线数据计算和使用5000根k线数据计算,都只是截一下使用数据计算的范围,真实计算中,未必用的上这些范围的数据,也就是说大部分时间都只是用一小部分数据进行计算,那么为什么使用5000根k线数据计算和使用360根k线数据计算相比,会有很大计算速度偏差呢?
因为ema计算出来的序列变量,就算不是最新的k线,在历史上也是有数据要计算的
不清楚你代码里面写这是做什么的,但是如果360根数据不足以计算出所需要的结果,那么就需要人为的去调整当前k线图上显示的数据了
不好意思老师,是我对软件不熟悉,刚看出来“使用指定数量的数据计算”这个选项可以不选,我想问如果不选的话,比如一分钟模型,系统就会把我本地存储的从2011年开始的全部1分钟数据全部来参与计算吗?