FINVIZ和AMIBROKER结合 金融视觉网站 FINVIZ.COM 是美股交易的最为严谨的交易工具。我每日都使用它。FINVIZ的股票过滤功能有60多个过滤器,可以应用到7000只美国股票。https://finviz.com/ 在如下文章中, 我会应用 FINVIZ 一个简单的过滤组合,同时利用 AMIBROKER 软件的历史回测功能,来提供一个新的视角,进而挑选股票。同时给出这个简单策略的回测结果。 FINVIZ 的股票选择 就像你可以设想的, 60 多个过滤器,可以组合出许多可能。然而, 我们有所限制,因为我们没有通道可以立即得到基本面的数据(在AMIBROKER上)。事实上,得到和利用基本面的数据比较困难。所以,以下我们仅仅关注于FINVIZ技术面的功能。 FINVIZ 的过滤器屏幕像如下的照片,我们设定了7个过滤器: (2018-08-12 20:23:45)[编辑] 通过FINVIZ, 我们挑选的股票具有如下的特点: 属于标普500成分股 收盘高于20日均线 收盘高于200日均线 ATR(14) < 1 相对成交量 > 1 (Relative Volume) 向下跳空缺口 股价低于50美元 注:ATR指标,在FINVIZ 和 AMIBROKER 中,略微不同, 我在程序中采用FINVIZ 的方法。具体参考如下: https://finviz.com/help/screener.ashx 我用AMIBROKER 软件,使用AFL语言,编写以上策略,数据用广受好评的Norgate 数据。该数据调整了股息,及股票的拆分。 以下是AMIBROKER的设定: 日线数据 最初股本100,000美元 证券组合,最多20只股票 头寸大小,5% (等权重) 卖出条件,20%的追踪止损 买卖时间,下一日的开盘价 同等条件下的排名, 相对成交量 (值大的优先) 概括如下, 我们根据如上的FINVIZ 的设定,买入标普500成分股。所有的信号用收盘价计算,买卖用下一日的开盘价执行。 我们用20%的追踪止损卖出。当追踪止损触及时,用下一日的开盘价退出。 当多只股票有重复信号时,我们首先选择较高的相对成交量股票。你可以通过FINVIZ筛选相对成交量的列。 相对成交量的定义是成交量除以3个月的平均成交量。 测试结果: 年化收益率11.86%, 最大回撤19.82%,胜率57.62%。 All trades Long trades Short trades Initial capital 100000.00 100000.00 100000.00 Ending capital 367240.99 367240.99 100000.00 Net Profit 267240.99 267240.99 0.00 Net Profit % 267.24 % 267.24 % 0.00 % Exposure % 86.17 % 86.17 % 0.00 % Net Risk Adjusted Return % 310.15 % 310.15 % N/A Annual Return % 11.86 % 11.86 % 0.00 % Risk Adjusted Return % 13.76 % 13.76 % N/A AFL代码: //Good Results From Backtesting A FINVIZ Stock Screen //https://jbmarwood.com/backtesting-finviz-stock-screen/#more-11212 SetTradeDelays(1,1,1,1); BuyPrice = O; SellPrice = O; TrueRange = Max(H, Ref(C,-1)) - Min(L, Ref(C,-1)); RelativeVol = V / MA(V,66); PositionScore = RelativeVol; //belong to the S&P 500 C20 = C > MA(C, 20); C200 = C > MA(C, 200); ATR14 = EMA(TrueRange, 14) < 1; RelVol = RelativeVol > 1; GapD = GapDown(); C50 = C < 50; Qty = 20; SetOption("MaxOpenPositions", Qty); SetPositionSize(100/Qty, spsPercentOfEquity); Buy = C20 AND C200 AND ATR14 AND RelVol AND GapD AND C50; Sell = 0; ApplyStop(stopTypeTrailing, stopModePercent, 20, True); 小结 我们使用FINVIZ的7个过滤器来挑选股票, 使用历史数据来回测。 具体的交易规则上面详细列出。 我们得到的测试结果还好。值得注意的是,我们没有使用任何优化参数的措施, 仅仅是简单过滤器的规则组合。 今日利用上述规则挑选的股票为: BLL, CCE, CTL, MOS, SWN, WMB 等6只股票。(2018 August 12)