写一个通达信的低位筹码峰选股公式
时间: 2023-10-04 15:12:22 浏览: 252
通达信的低位筹码峰选股公式可以根据个人的策略和需求进行设计和调整。以下是一个简单的示例公式,用于选取近期处于低位筹码峰的股票:
```c
/*
通达信低位筹码峰选股公式
参数:
n: 计算的周期
m: 筹码峰的最小阈值
用法示例:
选取近期处于低位筹码峰的股票
LowChipPeak(n, m)
返回值:
1:符合条件的股票
0:不符合条件的股票
*/
#define CLOSE 收盘价
#define VOLUME 成交量
var LowChipPeak(int n, int m)
{
var lowestPrice = LLV(CLOSE, n); // 最近n个周期内的最低价
var highestVolume = HHV(VOLUME, n); // 最近n个周期内的最高成交量
if (CLOSE < lowestPrice && VOLUME >= highestVolume * m)
{
return 1; // 符合条件的股票
}
else
{
return 0; // 不符合条件的股票
}
}
```
请注意,这只是一个示例公式,具体的低位筹码峰选股公式应根据个人需求和策略进行设计。该示例公式判断当日收盘价小于最近n个周期内的最低价,并且成交量大于最近n个周期内的最高成交量乘以m倍时,认为符合低位筹码峰的条件。具体的参数和阈值可根据实际情况进行调整。
相关问题
麻烦帮写一个通达信MACD底背离选股公式
通达信MACD底背离选股公式如下:
```C
/* MACD底背离选股公式 */
/* 定义变量 */
MA1:=EMA(CLOSE,12);
MA2:=EMA(CLOSE,26);
DIF:MA1-MA2;
DEA:EMA(DIF,9);
MACD:(DIF-DEA)*2;
/* 寻找底背离 */
LOWEST_LOW:=LLV(LOW,21);
REF_LOWEST_LOW:=REF(LOWEST_LOW,1);
HHV_MACD:=HHV(MACD,13);
REF_HHV_MACD:=REF(HHV_MACD,1);
COND1:LOW<LOWEST_LOW AND REF_LOWEST_LOW<REF(LOWEST_LOW,1);
COND2:MACD>HHV_MACD AND REF_MACD<REF_HHV_MACD;
/* 选股条件 */
COND3:COND1 AND COND2;
SELECTIF(COND3,1);
```
以上公式中,首先计算出MACD指标的DIF、DEA和MACD三个线,并使用LLV函数寻找最近21个交易日内的最低价LOWEST_LOW,使用REF函数获取上一交易日的最低价REF_LOWEST_LOW。
然后使用HHV函数寻找最近13个交易日内的MACD最高值HHV_MACD,使用REF函数获取上一交易日的MACD值REF_MACD。
最后,使用条件判断语句COND1和COND2寻找底背离,再使用条件判断语句COND3对底背离进行筛选,符合条件的股票将被选中。
通达信筹码选股公式如何编写
要编写通达信筹码选股公式,需要了解以下内容:
1. 筹码分布:可以通过计算每个价格区间的成交量和成交金额,来分析股票的筹码分布情况。
2. 主力资金流向:可以通过计算每个价格区间的主力资金流入和流出情况,来判断主力资金的流向。
3. 成交量变化率:可以通过计算股票的成交量变化率,来判断股票的成交量是否有所增长或缩小。
基于以上几点,可以编写如下的通达信筹码选股公式:
```
C:=CLOSE; //收盘价
V:=VOL; //成交量
M:=AMO; //成交金额
L:=LOW; //最低价
H:=HIGH; //最高价
O:=OPEN; //开盘价
//计算每个价格区间的成交量和成交金额
V1:=SUM(IF(C>=L AND C<=L+(H-L)/3,V,0),30);
V2:=SUM(IF(C>L+(H-L)/3 AND C<=L+(H-L)*2/3,V,0),30);
V3:=SUM(IF(C>L+(H-L)*2/3 AND C<=H,V,0),30);
M1:=SUM(IF(C>=L AND C<=L+(H-L)/3,M,0),30);
M2:=SUM(IF(C>L+(H-L)/3 AND C<=L+(H-L)*2/3,M,0),30);
M3:=SUM(IF(C>L+(H-L)*2/3 AND C<=H,M,0),30);
//计算每个价格区间的主力资金流入和流出情况
FI:=V*(2*C-L-H)/(H-L);
FI1:=SUM(IF(C>=L AND C<=L+(H-L)/3,FI,0),30);
FI2:=SUM(IF(C>L+(H-L)/3 AND C<=L+(H-L)*2/3,FI,0),30);
FI3:=SUM(IF(C>L+(H-L)*2/3 AND C<=H,FI,0),30);
//计算成交量变化率
VOL_RATE:=EMA(V,12)/EMA(V,26);
//筛选条件
CONDITION1:=(V1>M1*0.8 AND FI1>0 AND V2>M2*0.8 AND FI2>0 AND V3>M3*0.8 AND FI3>0);
CONDITION2:=(VOL_RATE>1.5);
SELECT IF(CONDITION1 AND CONDITION2,1,0);
```
以上公式仅供参考,具体应用需要根据实际情况进行调整和优化。