涨停板战法:寻找连板牛股的选股策略
代码介绍
以下代码由今日美股网(www.TodayUSStock.com)代码学院提供,涨停板战法是一种短线选股策略,旨在通过识别连板(连续涨停板)的股票来捕捉市场热点和短期强势股的走势。本选股公式通过检测连续多个交易日的涨停板来筛选潜在的牛股。
代码及加载方法
同花顺
// 定义涨停价格 LIMIT_UP:=CLOSE*(1+UPPER_LIMIT/100); // 涨停价计算,其中UPPER_LIMIT为涨停板百分比 // 判断连续涨停板 CONSECUTIVE_LIMIT_UP:=CLOSE==LIMIT_UP AND COUNT(CLOSE==LIMIT_UP,5)>=3; // 最近5天至少有3天涨停 // 选股条件 STOCK:=CONSECUTIVE_LIMIT_UP; // 返回结果 RETURN STOCK;
加载方法: 将代码复制粘贴到同花顺的"选股公式编辑器"中,命名为"涨停板战法选股",然后保存并运行。
东方财富
// 定义涨停价格 LIMIT_UP:=CLOSE*(1+UPPER_LIMIT/100); // 涨停价计算,其中UPPER_LIMIT为涨停板百分比 // 判断连续涨停板 CONSECUTIVE_UP:=CLOSE==LIMIT_UP AND COUNT(CLOSE==LIMIT_UP,5)>=3; // 最近5天至少有3天涨停 // 选股条件 SELECT:=CONSECUTIVE_UP; // 返回结果 RETURN SELECT;
加载方法: 复制代码到东方财富通"自定义指标"编辑器中,保存并应用到选股条件中。
通达信
// 定义涨停价格 LIMIT_UP:=CLOSE*(1+UPPER_LIMIT/100); // 涨停价计算,其中UPPER_LIMIT为涨停板百分比 // 判断连续涨停板 CONSECUTIVE_UP:=CLOSE==LIMIT_UP AND COUNT(CLOSE==LIMIT_UP,5)>=3; // 最近5天至少有3天涨停 // 选股条件 SELECT_STOCK:=CONSECUTIVE_UP; // 返回结果 RETURN SELECT_STOCK;
加载方法: 在通达信软件中,进入"公式管理器",选择"新建公式",粘贴代码后保存并使用。
大智慧
// 定义涨停价格 LIMIT_UP:=CLOSE*(1+UPPER_LIMIT/100); // 涨停价计算,其中UPPER_LIMIT为涨停板百分比 // 判断连续涨停板 CONSECUTIVE_UP:=CLOSE==LIMIT_UP AND COUNT(CLOSE==LIMIT_UP,5)>=3; // 最近5天至少有3天涨停 // 选股条件 STOCK_SELECT:=CONSECUTIVE_UP; // 返回结果 RETURN STOCK_SELECT;
加载方法: 进入大智慧的"指标管理",创建新指标,粘贴代码后保存使用。
MetaStock
// 定义涨停价格 LIMIT_UP:=CLOSE*(1+UPPER_LIMIT/100); // 涨停价计算,其中UPPER_LIMIT为涨停板百分比 // 判断连续涨停板 CONSECUTIVE_UP:=CLOSE==LIMIT_UP AND COUNTIF(CLOSE==LIMIT_UP,5)>=3; // 最近5天至少有3天涨停 // 选股条件 STOCK:=CONSECUTIVE_UP; // 返回结果 RETURN STOCK;
加载方法: 在MetaStock中,进入"Indicator Builder",新建指标,输入代码并保存。
NinjaTrader
using System; using NinjaTrader.NinjaScript; public class LimitUpStrategy : Indicator { protected override void OnStateChange() { if (State == State.SetDefaults) { Description = "Limit Up Strategy for Stock Selection"; Name = "LimitUpStrategy"; Calculate = Calculate.OnBarClose; IsOverlay = false; IsSuspendedWhileInactive = true; } } protected override void OnBarUpdate() { double upperLimit = 10; // 假设涨停板为10%,根据市场调整 double limitUpPrice = CLOSE[0] * (1 + upperLimit / 100.0); int countLimitUp = 0; for (int i = 0; i < Math.Min(5, CurrentBar); i++) { if (CLOSE[i] == limitUpPrice) countLimitUp++; } bool consecutiveUp = CLOSE[0] == limitUpPrice && countLimitUp >= 3; PlotNewValue("StockSelect", consecutiveUp ? 1 : 0); } }
加载方法: 打开NinjaTrader,进入"NinjaScript Editor",新建Indicator,粘贴代码并编译。
eSignal
// 定义涨停价格 LIMIT_UP:=CLOSE*(1+UPPER_LIMIT/100); // 涨停价计算,其中UPPER_LIMIT为涨停板百分比 // 判断连续涨停板 CONSECUTIVE_UP:=CLOSE==LIMIT_UP AND COUNT(CLOSE==LIMIT_UP,5)>=3; // 最近5天至少有3天涨停 // 选股条件 STOCK:=CONSECUTIVE_UP; // 返回结果 RETURN STOCK;
加载方法: 在eSignal中,进入"Formula Editor",新建公式,粘贴代码并保存。
TradingView
//@version=4 study("Limit Up Strategy", shorttitle="LimitUp", overlay=false) // 定义涨停价格 upperLimit = 10 // 假设涨停板为10%,根据市场调整 limitUpPrice = close * (1 + upperLimit / 100.0) // 判断连续涨停板 consecutiveUp = close == limitUpPrice and sum(close == limitUpPrice, 5) >= 3 // 最近5天至少有3天涨停 // 返回结果 plotshape(consecutiveUp, title="Stock Selection", location=location.belowbar, color=color.green, style=shape.triangleup, size=size.small)
加载方法: 在TradingView中,点击图表右上角的"Pine Editor",新建脚本,粘贴代码后保存并应用到图表。
MetaTrader 4/5
//+------------------------------------------------------------------+ //| Limit Up Strategy Indicator | //+------------------------------------------------------------------+ #property indicator_chart_window #property indicator_buffers 1 #property indicator_color1 Lime double ExtMapBuffer[]; double upperLimit = 10.0; // 假设涨停板为10%,根据市场调整 int OnInit() { SetIndexStyle(0, DRAW_ARROW, 0, 1); SetIndexArrow(0, 233); SetIndexBuffer(0, ExtMapBuffer); return(INIT_SUCCEEDED); } int OnCalculate(const int rates_total, const int prev_calculated, const datetime &time[], const double &open[], const double &high[], const double &low[], const double &close[], const long &tick_volume[], const long &volume[], const int &spread[]) { int i, limit; if(rates_total = 0; j++) { if(close[i - j] == limitUpPrice) countLimitUp++; } if(close[i] == limitUpPrice && countLimitUp >= 3) { ExtMapBuffer[i] = Low[i] - 20 * Point; } else { ExtMapBuffer[i] = EMPTY_VALUE; } } return(rates_total); }
加载方法: 在MetaTrader中,进入"MetaEditor",新建Expert Advisor或Indicator,粘贴代码,编译并加载到图表。
参数说明
参数 | 意义 |
---|---|
UPPER_LIMIT | 涨停板的百分比,根据不同市场和时间调整 |
LIMIT_UP | 计算当天涨停价 |
COUNT(CLOSE==LIMIT_UP,5)>=3 | 检查最近5天是否有至少3天达到涨停板 |
针对不同产品推荐参数
产品类型 | 推荐参数 | 理由 |
---|---|---|
股票 | UPPER_LIMIT(10), COUNT(5,3) | 主板市场涨停板通常为10%,连续3天涨停板表明强势 |
期货 | UPPER_LIMIT(市场具体值), COUNT(3,2) | 期货市场涨停板百分比变化,短周期更适合 |
外汇 | 不适用 | 外汇市场一般没有涨停板限制 |
加密货币 | 不适用 | 加密货币市场也通常没有涨停板限制 |
优点和缺点
优点 | 缺点 |
---|---|
能够捕捉市场短期热点和强势股 | 风险高,因为连板股票可能面临快速回调 |
适用于短线交易,快速获利 | 需要严格的风险管理,容易被市场情绪驱动 |
简单易用,操作明确 | 在市场顶部或政策变动时可能失效 |
使用建议
此选股策略适用于短线操作,特别是在市场情绪高涨或有明确热点时。建议结合成交量、市场新闻等信息,以提高选股的准确性。同时,严格设置止损点,避免在反转时的大幅亏损。定期回测和调整参数以适应市场变化。
来源:今日美股网