Files
strategies/分享-逐棒分析多空强弱指示器.md
2023-10-31 12:29:56 +08:00

118 lines
5.9 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
> Name
分享-逐棒分析多空强弱指示器
> Author
作手君TradeMan
> Strategy Description
为回馈FMZ平台与社区,进行策略&代码&思路&模板的分享
简介:
封包好的函数指标,可直接调用
逐根K线分析
通过比较K线自身收盘位置与最近两根K线关系衡量市场多空强弱。
大多数情况下我们观察价格运动只会注意收盘价或者本根K线的形态,如何以一种更好的方式阅读K线和理解多空的强弱是更深入研究的方向,本研究提出一种解决思路,将K线自身类型与本根K线和上跟K线位置比较进行多空力量编码,如图所示,本研究将K线定义为18种类型。其分类方式主要有两个,一是收盘位置(帮助确定单根K线观点),二是收盘比较(帮助确定联系的K线观点)。收盘位置可以帮助确定单根K线的观点,我们根据一条K线的收盘价在其最高价到最低价的区间内所处的位置,把它定义为高位收盘K线、中位收盘K线和低位收盘K线。每种位置收盘的K线又分为强势K线(收盘价>开盘价)与弱势K线(收盘价<开盘价),因此单根K线的类别总共有6种,分别为:高位收盘的强势K线;高位收盘的弱势K线;中位收盘的强势K线;中位收盘的弱势K线;低位收盘的强势K线;低位收盘的弱势K线。
![IMG](https://www.fmz.com/upload/asset/a7be2f213a94a4dc6b8f.png)
![IMG](https://www.fmz.com/upload/asset/a898d4d1a12440ee8bc4.png)
![IMG](https://www.fmz.com/upload/asset/a87da3bf5541e8c910da.png)
![IMG](https://www.fmz.com/upload/asset/a875e44f3b9fbff5a691.png)
综上所述,将6种K线收盘关系与3种K线收盘比较相结合,总共产生18种K线强弱关系,将多头最强的K线编码为9将最弱的K线编码为-9,其余依次按强弱关系递进编码,结果如图
![IMG](https://www.fmz.com/upload/asset/a86de64549f7f9a0fc87.png)
欢迎合作交流,共同学习进步~
v:haiyanyydss
> Source (javascript)
``` javascript
$.getClosezhubang = function(rds){
var arrclose = [];
var arropen = [];
var arrhigh = [];
var arrlow = [];
var arrzhubang = [];
for(var i in rds){
arrclose[i] = rds[i].Close;
arropen[i] = rds[i].Open;
arrhigh[i] = rds[i].High;
arrlow[i] = rds[i].Low;
if(i>1){
if(arrclose[i] >= arrhigh[i-1]){
if(arrclose[i] >= (arrhigh[i]-(arrhigh[i]-arrlow[i])/3) && arrclose[i] >= arropen[i]){
arrzhubang[i] = arrclose[i]*1.09;
}else if(arrclose[i] >= (arrhigh[i]-(arrhigh[i]-arrlow[i])/3) && arrclose[i] < arropen[i]){
arrzhubang[i] = arrclose[i]*1.08;
}else if(arrclose[i] > (arrlow[i]+(arrhigh[i]-arrlow[i])/3) && arrclose[i] < (arrhigh[i]-(arrhigh[i]-arrlow[i])/3) && arrclose[i] >= arropen[i]){
arrzhubang[i] = arrclose[i]*1.07;
}else if(arrclose[i] > (arrlow[i]+(arrhigh[i]-arrlow[i])/3) && arrclose[i] < (arrhigh[i]-(arrhigh[i]-arrlow[i])/3) && arrclose[i] < arropen[i]){
arrzhubang[i] = arrclose[i]*1.06;
}else if(arrclose[i] <= (arrlow[i]+(arrhigh[i]-arrlow[i])/3) && arrclose[i] >= arropen[i]){
arrzhubang[i] = arrclose[i]*1.05;
}else if(arrclose[i] <= (arrlow[i]+(arrhigh[i]-arrlow[i])/3) && arrclose[i] < arropen[i]){
arrzhubang[i] = arrclose[i]*1.04;
}
}
else if(arrclose[i] < arrhigh[i-1] && arrclose[i] > arrlow[i-1]){
if(arrclose[i] >= (arrhigh[i]-(arrhigh[i]-arrlow[i])/3) && arrclose[i] >= arropen[i]){
arrzhubang[i] = arrclose[i]*1.03;
}else if(arrclose[i] >= (arrhigh[i]-(arrhigh[i]-arrlow[i])/3) && arrclose[i] < arropen[i]){
arrzhubang[i] = arrclose[i]*1.02;
}else if(arrclose[i] > (arrlow[i]+(arrhigh[i]-arrlow[i])/3) && arrclose[i] < (arrhigh[i]-(arrhigh[i]-arrlow[i])/3) && arrclose[i] >= arropen[i]){
arrzhubang[i] = arrclose[i]*1.01;
}else if(arrclose[i] > (arrlow[i]+(arrhigh[i]-arrlow[i])/3) && arrclose[i] < (arrhigh[i]-(arrhigh[i]-arrlow[i])/3) && arrclose[i] < arropen[i]){
arrzhubang[i] = arrclose[i]*0.99;
}else if(arrclose[i] <= (arrlow[i]+(arrhigh[i]-arrlow[i])/3) && arrclose[i] >= arropen[i]){
arrzhubang[i] = arrclose[i]*0.98;
}else if(arrclose[i] <= (arrlow[i]+(arrhigh[i]-arrlow[i])/3) && arrclose[i] < arropen[i]){
arrzhubang[i] = arrclose[i]*0.97;
}
}
else if(arrclose[i] <= arrlow[i-1]){
if(arrclose[i] >= (arrhigh[i]-(arrhigh[i]-arrlow[i])/3) && arrclose[i] >= arropen[i]){
arrzhubang[i] = arrclose[i]*0.96;
}else if(arrclose[i] >= (arrhigh[i]-(arrhigh[i]-arrlow[i])/3) && arrclose[i] < arropen[i]){
arrzhubang[i] = arrclose[i]*0.95;
}else if(arrclose[i] > (arrlow[i]+(arrhigh[i]-arrlow[i])/3) && arrclose[i] < (arrhigh[i]-(arrhigh[i]-arrlow[i])/3) && arrclose[i] >= arropen[i]){
arrzhubang[i] = arrclose[i]*0.94;
}else if(arrclose[i] > (arrlow[i]+(arrhigh[i]-arrlow[i])/3) && arrclose[i] < (arrhigh[i]-(arrhigh[i]-arrlow[i])/3) && arrclose[i] < arropen[i]){
arrzhubang[i] = arrclose[i]*0.93;
}else if(arrclose[i] <= (arrlow[i]+(arrhigh[i]-arrlow[i])/3) && arrclose[i] >= arropen[i]){
arrzhubang[i] = arrclose[i]*0.92;
}else if(arrclose[i] <= (arrlow[i]+(arrhigh[i]-arrlow[i])/3) && arrclose[i] < arropen[i]){
arrzhubang[i] = arrclose[i]*0.91;
}
}
}else{
arrzhubang[i] = arrclose[i];
}
}
return arrzhubang;
}
```
> Detail
https://www.fmz.com/strategy/396760
> Last Modified
2023-02-09 09:48:55