打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
利用条件语句和循环语句找出最高点和最低点连接策略
以下代码的内容是找出一个特殊Bar(K线)
一 找出最高点
条件:
1. 这个Bar的最高价高于前15个Bar的最高价
2. 这个Bar的最高价高于后15个Bar的最高价
也就是说这个Bar在周围30个Bar里最高价最高还得居中
任务a. 先找出所有相关条件的Bar,然后给它画上方框(红色)
二 找出最低点
条件:
1. 这个Bar的最低价低于前15 个Bar的最低价
2. 这个Bar的最低价低于后15 个Bar的最低价
也就是说这个Bar在周围30个Bar里最低价最低还得居中
任务b. 先找出所有相关条件的Bar,然后给它画上方框(蓝色)
任务c. ;用线连接相邻的最高点和最低点, 要是最高点或最低点重复时把前面的点去掉。
Input : Len1(15)                                                                   //声明变量Len1 赋值为 15
Var : 总长度(0),索引(0)
Var : 保存最高值(0),保存最低值(0)                                 //声明可以存储最高价和最低价的变量
Var : 判断高低点(0),高点(1),低点(-1)                             // 判断相同的点是否重复
Array     : 最高点存储[3](0),最低点存储[3](0)
总长度       = Len1 * 2
保存最高值 = High                                                          //保存最高值
保存最低值  = Low                                                          // 保存最低值
For 索引 = 1 to 总长度                                                  //运行循环语句
if High[索引] > 保存最高值 then
保存最高值 = High[索引]                                         // 获取最高值
end if
if Low[索引] < 保存最低值 then
保存最低值 = Low[索引]                                           // 获取最低值
end if
end For
if 保存最高值 == High[Len1] then                                   //判断最低点是否居中
if 判断高低点 == 高点 then                                         //判断最高点是否重复
delete ORec                                                                  // 删除前面 红色方框
end if
最高点存储[0] = D[Len1]                                               // 存储最高值 坐标
最高点存储[1] = T[Len1]
最高点存储[2] = H[Len1]
vHcount = 1
vHBegin = Len1 + vHcount
vHEnd   = Len1 - vHcount
ORec = new Rectangle(Date[vHBegin],Time[vHBegin],High[Len1]+1,Date[vHEnd],Time[vHEnd],High[Len1]-1)  //画红色方框
ORec.Color = Red    //颜色设定为红色
if 判断高低点 == 低点 then                                        //判断最高点是否重复
OL = new Line(最低点存储[0],最低点存储[1],最低点存储[2],Date[Len1],Time[Len1],H[Len1]); // 连接最低点和最高点
OL.Color = Yellow
OL.Size = 2
elseif  判断高低点 == 高点 then                              //判断最高点是否重复
OL.SetEnd(Date[Len1],Time[Len1],H[Len1]);         // 连接前最低点
end if
判断高低点 = 高点                                                   // 设定最高点
end if
if 保存最低值 == Low[Len1] then                               //判断最低点是否居中
if 判断高低点 == 低点 then                                    // 判断最低点是否重复
delete Orec                                                               // 重复为真 删除前面 蓝色方框
end if
vHcount = 1
vHBegin = Len1 + vHcount
vHEnd   = Len1 - vHcount
Orec = new Rectangle(Date[vHBegin],Time[vHBegin],Low[Len1]+1,Date[vHEnd],Time[vHEnd],Low[Len1]-1)//画蓝色方框
Orec.Color= Blue
最低点存储[0] = D[Len1]                                                               // 存储最低值 坐标
最低点存储[1] = T[Len1]
最低点存储[2] = L[Len1]
if 判断高低点 == 高点 then                                                           //判断最低点是否重复
OL = new Line(最高点存储[0],最高点存储[1],最高点存储[2],Date[Len1],Time[Len1],Low[Len1])// 为真,连接最低点和最高点
OL.Color = white
OL.Size = 2
elseif 判断高低点 == 低点 then                                                    //判断最高点是否重复
OL.SetEnd(Date[Len1],Time[Len1],Low[Len1])                            // 连接前最高点
end if
判断高低点 = 低点
end if
以下可以看出代码编译后执行的结果图片
1. 找出所有居中的最高值
2. 找出所有居中的最低值
3. 找出所有居中的最高值和最低值
4. 连接所有相邻的最高点和最低点
5. 删除所有不符合条件的点,最后想得到的指标
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
2700多点的我们身在历史何处?
引用函数HHVBARS和LLVBARS的运用-阳之光指标交流空间-金融界博客
大盘个股走势顶底预测计算方法
趋势线突破交易法则3.0
一位成功的投资者告诉你分时图运用,永远买在最低点,卖在最高点
切线“十八罗汉”
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服