代码拉取完成,页面将自动刷新
同步操作将从 jack/缠论程序化交易系统 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
function bool = PushHigh(nIndex, fValue) %按照最高价计算中枢
global Centroid %中枢class 为全局变量,出现在所有函数堆栈中
if Centroid.bValid == true %如果正在处理中枢
Centroid.nLines = Centroid.nLines + 1; %线段+1. 三段为一个中枢
Centroid.fPHigh = Centroid.fHigh; %中枢高数据设定为当前线段高点
Centroid.fPLow = Centroid.fLow; %中枢低数据设定为当前线段低点
else
Centroid.nLines = 0; %如果没有确认中枢,线段=0
end
%更新高低点位置信息
Centroid.nTop2 = Centroid.nTop1;
Centroid.fTop2 = Centroid.fTop1;
Centroid.nTop1 = nIndex; %当前高点位置
Centroid.fTop1 = fValue; %当前高点数值
%如果非中枢模式下
if Centroid.bValid == false
%更新区间高点
if Centroid.fTop1 < Centroid.fTop2 %如果当前高点 < 上一个高点 => 下跌中继中枢
Centroid.fHigh = Centroid.fTop1; %取当前高点为线段高点
else %如果当前高点 > 上一个高点 => 上涨中继中枢
Centroid.fHigh = Centroid.fTop2; %取前一个高点为线段高点
end
%中枢识别
if Centroid.fHigh > Centroid.fLow %如果当前线段高点 > 当前线段低点
if Centroid.fBot1 < Centroid.fBot2 %如果当前低点 < 上一个低点
Centroid.nStart = Centroid.nBot2; %区段起点设定为上一个低点
else %如果当前低点 > 上一个低点
Centroid.nStart = Centroid.nTop2; %区段起点设定为上一个高点
end
Centroid.bValid = true; %中枢识别继续
end
else %如果在中枢中
%更新中枢高
if Centroid.fHigh > Centroid.fTop1 %如果当前线段高点 > 当前高点
Centroid.fHigh = Centroid.fTop1; %当前线段高点设定为当前高点
end
%中枢终结
if Centroid.fHigh < Centroid.fLow %如果线段当前高点 < 线段当前低点
Centroid.fHigh = Centroid.fTop1; %线段当前高点设定为当前高点
Centroid.fLow = Centroid.fBot1; %线段当前低点设定为当前低点
Centroid.nEnd = Centroid.nTop2; %区段结束位置设定为上一个高点
Centroid.bValid = false; %中枢结束
if Centroid.nLines > 2 %如果完成的中枢里线段三根或者以上
bool = true;
return %输出中枢高低点位置信息true
end
end
end
bool = false;
return %没有中枢,输出false
end
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。