突破前高放量策略:寻找加速拉升个股
以下代码由今日美股网(www.TodayUSStock.com)代码学院提供,该选股公式通过识别股价突破前高并伴随成交量放大的情况,帮助投资者捕捉加速拉升的个股。以下是适用于多个主流股票软件的代码实现。
代码实现
同花顺
以下代码适用于同花顺软件,使用标准函数,无需额外调整。
// 同花顺选股公式 HIGH_PREV := REF(HHV(HIGH, 20), 1); // 计算前20日最高价 BREAK_HIGH := CLOSE > HIGH_PREV; // 突破前高条件 VOL_RATIO := VOL / REF(MA(VOL, 5), 1); // 计算成交量与5日均量的比值 VOL_BURST := VOL_RATIO > 2; // 成交量放大条件(比值大于2) BUY_SIGNAL := BREAK_HIGH AND VOL_BURST; // 买入信号 FILTER(BUY_SIGNAL, 1); // 筛选符合条件的股票
加载方法:打开同花顺软件,进入选股器,粘贴代码并保存。
东方财富
以下代码适用于东方财富软件,使用标准函数,无需额外调整。
// 东方财富选股公式 HIGH_PREV := REF(HHV(HIGH, 20), 1); // 计算前20日最高价 BREAK_HIGH := CLOSE > HIGH_PREV; // 突破前高条件 VOL_RATIO := VOL / REF(MA(VOL, 5), 1); // 计算成交量与5日均量的比值 VOL_BURST := VOL_RATIO > 2; // 成交量放大条件(比值大于2) BUY_SIGNAL := BREAK_HIGH AND VOL_BURST; // 买入信号 BUY_SIGNAL; // 筛选符合条件的股票
加载方法:打开东方财富软件,进入选股器,粘贴代码并保存。
通达信
以下代码适用于通达信软件,使用标准函数,无需额外调整。
// 通达信选股公式 HIGH_PREV := REF(HHV(HIGH, 20), 1); // 计算前20日最高价 BREAK_HIGH := CLOSE > HIGH_PREV; // 突破前高条件 VOL_RATIO := VOL / REF(MA(VOL, 5), 1); // 计算成交量与5日均量的比值 VOL_BURST := VOL_RATIO > 2; // 成交量放大条件(比值大于2) BUY_SIGNAL := BREAK_HIGH AND VOL_BURST; // 买入信号 BUY_SIGNAL; // 筛选符合条件的股票
加载方法:打开通达信软件,进入选股器,粘贴代码并保存。
大智慧
以下代码适用于大智慧软件,使用标准函数,无需额外调整。
// 大智慧选股公式 HIGH_PREV := REF(HHV(HIGH, 20), 1); // 计算前20日最高价 BREAK_HIGH := CLOSE > HIGH_PREV; // 突破前高条件 VOL_RATIO := VOL / REF(MA(VOL, 5), 1); // 计算成交量与5日均量的比值 VOL_BURST := VOL_RATIO > 2; // 成交量放大条件(比值大于2) BUY_SIGNAL := BREAK_HIGH AND VOL_BURST; // 买入信号 BUY_SIGNAL; // 筛选符合条件的股票
加载方法:打开大智慧软件,进入选股器,粘贴代码并保存。
MetaStock
以下代码适用于MetaStock软件,使用标准函数,无需额外调整。
// MetaStock选股公式 HIGH_PREV := Ref(HHV(H, 20), -1); // 计算前20日最高价 BREAK_HIGH := C > HIGH_PREV; // 突破前高条件 VOL_RATIO := V / Ref(Mov(V, 5, S), -1); // 计算成交量与5日均量的比值 VOL_BURST := VOL_RATIO > 2; // 成交量放大条件(比值大于2) BUY_SIGNAL := BREAK_HIGH AND VOL_BURST; // 买入信号 BUY_SIGNAL; // 筛选符合条件的股票
加载方法:打开MetaStock软件,进入公式编辑器,粘贴代码并保存。
NinjaTrader
以下代码适用于NinjaTrader软件,使用标准函数,无需额外调整。
// NinjaTrader选股公式 HIGH_PREV := MAX(High, 20)[1]; // 计算前20日最高价 BREAK_HIGH := Close[0] > HIGH_PREV; // 突破前高条件 VOL_RATIO := Volume[0] / SMA(Volume, 5)[1]; // 计算成交量与5日均量的比值 VOL_BURST := VOL_RATIO > 2; // 成交量放大条件(比值大于2) BUY_SIGNAL := BREAK_HIGH AND VOL_BURST; // 买入信号 BUY_SIGNAL; // 筛选符合条件的股票
加载方法:打开NinjaTrader软件,进入策略编辑器,粘贴代码并保存。
eSignal
以下代码适用于eSignal软件,使用标准函数,无需额外调整。
// eSignal选股公式 HIGH_PREV := Ref(Highest(High, 20), -1); // 计算前20日最高价 BREAK_HIGH := Close() > HIGH_PREV; // 突破前高条件 VOL_RATIO := Volume() / Ref(MA(Volume(), 5), -1); // 计算成交量与5日均量的比值 VOL_BURST := VOL_RATIO > 2; // 成交量放大条件(比值大于2) BUY_SIGNAL := BREAK_HIGH AND VOL_BURST; // 买入信号 BUY_SIGNAL; // 筛选符合条件的股票
加载方法:打开eSignal软件,进入公式编辑器,粘贴代码并保存。
TradingView
以下代码适用于TradingView软件,使用标准函数,无需额外调整。
// TradingView选股公式 HIGH_PREV := ta.highest(high, 20)[1]; // 计算前20日最高价 BREAK_HIGH := close > HIGH_PREV; // 突破前高条件 VOL_RATIO := volume / ta.sma(volume, 5)[1]; // 计算成交量与5日均量的比值 VOL_BURST := VOL_RATIO > 2; // 成交量放大条件(比值大于2) BUY_SIGNAL := BREAK_HIGH and VOL_BURST; // 买入信号 BUY_SIGNAL; // 筛选符合条件的股票
加载方法:打开TradingView软件,进入Pine Script编辑器,粘贴代码并保存。
MetaTrader 4/5
以下代码适用于MetaTrader 4/5软件,使用标准函数,无需额外调整。
// MetaTrader 4/5选股公式 double HIGH_PREV = iHigh(NULL, 0, iHighest(NULL, 0, MODE_HIGH, 20, 1)); // 计算前20日最高价 bool BREAK_HIGH = iClose(NULL, 0, 0) > HIGH_PREV; // 突破前高条件 double VOL_RATIO = iVolume(NULL, 0, 0) / iMA(NULL, 0, 5, 0, MODE_SMA, PRICE_VOLUME, 1); // 计算成交量与5日均量的比值 bool VOL_BURST = VOL_RATIO > 2; // 成交量放大条件(比值大于2) bool BUY_SIGNAL = BREAK_HIGH && VOL_BURST; // 买入信号 BUY_SIGNAL; // 筛选符合条件的股票
加载方法:打开MetaTrader软件,进入MetaEditor,粘贴代码并保存。
参数说明
参数 | 意义 | 推荐值 | 适用产品 | 推荐理由 | 参数调整建议 |
---|---|---|---|---|---|
HIGH_PREV | 前20日最高价 | 20 | 股票、期货、外汇、加密货币 | 反映短期价格压力位 | 对于波动较大的市场,可调整为10 |
VOL_RATIO | 成交量与5日均量的比值 | >2 | 股票、期货、外汇、加密货币 | 反映成交量爆发情况 | 对于波动较大的市场,可调整为>3 |
优缺点分析
优点 | 缺点 |
---|---|
1. 捕捉突破前高的加速拉升机会 | 1. 需要实时数据支持,延迟可能导致信号失效 |
2. 结合量价分析,信号更可靠 | 2. 参数设置可能因市场不同而需要调整 |
3. 适用于多种金融产品 | 3. 需要结合其他指标进行综合判断 |
使用建议
建议结合其他技术指标(如均线、RSI等)进行综合判断。
根据不同市场(股票、期货、外汇、加密货币)调整参数设置。
定期回测和优化参数,以适应市场变化。
回测和优化建议
在使用该选股公式前,建议进行历史数据回测,以验证其有效性。以下是回测步骤:
选择一段历史数据(如过去1年的数据)。
在选股软件中加载公式并运行回测。
根据回测结果调整参数(如20
的前高周期和2
的成交量比值阈值)。
结合其他指标(如均线、RSI等)进行综合优化。
常见问题解答(FAQ)
问题1:代码无法运行可能原因:函数名称不兼容。请检查所用软件的函数库,确保函数名称正确。
问题2:选股结果不准确可能原因:参数设置不适合当前市场。建议根据市场特性调整参数。
问题3:如何加载代码请参考每个代码段下方的加载方法说明。
来源:今日美股网