让建站和SEO变得简单

让不懂建站的用户快速建站,让会建站的提高建站效率!

智能设备

智能设备

净利润同比增高政策

2024-11-01

政策先容

净利润同比增长选股政策旨在通过筛选那些净利润同比增长显赫的公司,挖掘潜在的投资契机。该政策中枢在于取舍那些净利润增长率高的公司,以捕捉其盈利增长后劲,同期确保这些公司具备矜重的财务景况,如老本豪阔率和流动比率细密。此外,还温文这些公司股价的飞腾趋势和成交量雄厚,以及它们所处行业的增长出路,以确保投资的恒久价值。

政策抽象

本政策是基于价值投资的多因子选股模子,最初选出了市净率、净利润同比增长率、交易收入同比增长率三个比拟具有代表性的因子,以此对个股估值和盈利智力两个方面进行度量,尝试选出最值得投资的股票组合。

表面依据

--市净率:从财务分析的角度来看,净钞票是臆想企业鼓舞权利的关节见解,其增长常常与公司的盈利智力正干系。在上市公司捏续已矣盈利的情况下,其净钞票范围的推广意味着鼓舞权利的相应加多。市净率(Price to Book Ratio,P/B Ratio)行动臆想股票投资价值的一个弥留见解,市净率的盘算公式:市净率=每股市价/每股净钞票。较低的市净率常常被视作投资价值较高的信号,因为它标明投资者粗略以较低的成本获得公司的鼓舞权利。

在公司盈利智力雄厚的前提下,其股票的市集价钱表面上应高于其账面价值。然则,由于市集参与者的非感性举止,尤其是在中国A股市集,存在一定数目的破净股票,即市集价钱低于其净钞票价值的股票。这种现象常常不会捏续,因为市集效果假说合计价钱最终会反应其内在价值。机构投资者,行动市集的主要参与者,一朝发现这种价钱与价值的背离,将会遴荐行动,通过购买这些低估的股票来推动市集价钱向其内在价值靠近。因此,取舍市净率较低的股票进行投资,是一种感性且矜重的政策。

--净利润同比增长率:净利润同比增长率是一个关节的财务见解,它臆想了企业在一定工夫内净利润的增长情况,反应了公司盈利智力的动态变化。这一见解关于投资者而言至关弥留,因为它提供了对公司昔日盈利后劲的知悉。在进行财务分析时,咱们常常温文公司净利润的年度增长率,即当客岁度的净利润与上一年同期净利润的比拟。一个正的同比增长率标明公司的盈利智力在增强,而一个负的增长率则可能默示公司濒临盈利压力或市集挑战。在构建基于净利润同比增长率的投资政策时,不错捏续构建净利润同比增长率为正,且在行业中发达优异的股票池,这类公式具备优质的预期带来较高的投资薪金的可能性更高。同期,投资者也应密切温文公司的盈利质地和增长的可捏续性,以幸免投资于那些仅因一次性事件或短期市集波动而出现利润增长的公司。

--交易收入同比增长率:该见解是臆想企业销售功绩和市集推广智力的关节财务见解。该见解通过比拟当客岁度与上一年度同期的交易收入,反应了公司在一定工夫内销售收入的增长情况,是投资者评估企业市集竞争力和成长后劲的弥留依据。在进行企业财务分析时,交易收入同比增长率提供了对公司销售动态的直不雅了解。一个正的同比增长率常常意味着公司在市集上的销售发达存所进步,可能是由于产物或劳动需求的加多、市集份额的扩大或价钱的进步。相背,一个负的同比增长率可能标明公司濒临市集需求减少、竞争加重或其他外部身分的挑战。取舍那些交易收入同比增长率雄厚且高于行业平均水平的公司,可能是一个感性的投资取舍。这么的公司常常具有较强的市聚积适智力和竞争上风,粗略在昔日已矣捏续的收入增长和盈利智力进步。该因子和净利润同比增长率因子所反应的信息具有一定相通度。

政策过程

1. 股票池过滤:剔除ST股、停牌股、北交所

2. 筛选条目:市净率>5,净利润同比增长率>0.3,交易收入同比增长率因子>0.3,市值大于5亿,市盈率大于0小于50

3. 排序条目:总市值盘算得分,按照得分从小到大排序

4. 政策回测:捏股5只等权重、捏仓5天、回测时候为2018-10-16至2024-09-05

政策已矣

A股-基础选股模块

在“往复所”一栏中,取消勾选“北交所”在“上市板块”一栏中,取消勾选“科创版”在“ST状态”一栏中,取消勾选“ST”与“*ST”终末勾选“过滤停牌”其他选项保留默许

输入特征模块

total_market_cap AS score将总市值行动排序因子

在m2“输入特征(DAI SQL)”的“抒发式过滤条目”一栏中,已矣筛选条目

float_market_cap > 500000000 -- 通顺市值大于5亿net_profit_yoy_lf > 0.3 -- 净利润同比增长率(最新一期)operating_revenue_yoy_lf > 0.3 -- 交易收入同比增长率(最新一期)pe_ttm > 0 pe_ttm < 50pb < 5 -- 市净率

收用出市净率>5,净利润同比增长率>0.3,交易收入同比增长率因子>0.3,市值大于5亿,市盈率大于0小于50的股票

数据抽取模块

在m4数据抽取模块,输入回测肇始和适度时候

仓位分派模块

在“评分score字段排序”一栏,取舍按照score排序,况兼是降序排序DESC在“捏仓股票数目”一栏中输入5,泄漏捏股5只

在“仓位公式”一栏中输入1 AS position,泄漏等权捏仓(将仓位分为5等份,每个股票在仓内占1份)

BigTrader模块

终末,在m5“BigTrader”模块中,已矣往复逻辑。“调仓周期日历”设置为5泄漏周度换仓/捏仓日为5天

政策源码

以下为部分政策源码,齐全实质和政策源码,请私信我获得:

from bigmodule import M# <aistudiograph># @param(id="m5", name="initialize")# 往复引擎:开动化函数,只推论一次def m5_initialize_bigquant_run(context): from bigtrader.finance.commission import PerOrder # 系统仍是设置了默许的往复手续费和滑点,要修改手续费可使用如下函数 context.set_commission(PerOrder(buy_cost=0.0003, sell_cost=0.0013, min_cost=5))# @param(id="m5", name="before_trading_start")# 往复引擎:每个单元时候开盘前调用一次。def m5_before_trading_start_bigquant_run(context, data): # 盘前搞定,订阅行情等 pass# @param(id="m5", name="handle_tick")# 往复引擎:tick数据搞定函数,每个tick推论一次def m5_handle_tick_bigquant_run(context, tick): pass# @param(id="m5", name="handle_data")def m5_handle_data_bigquant_run(context, data): import pandas as pd # 下一个往复日不是调仓日,则不生成信号 if not context.rebalance_period.is_signal_date(data.current_dt.date()): return # 从传入的数据 context.data 中读取今天的信号数据 today_df = context.data[context.data["date"] == data.current_dt.strftime("%Y-%m-%d")] target_instruments = set(today_df["instrument"]) # 获适现时已捏有股票 holding_instruments = set(context.get_account_positions().keys()) # 卖出不在标的捏有列表中的股票 for instrument in holding_instruments - target_instruments: context.order_target_percent(instrument, 0) # 买入标的捏有列表中的股票 for i, x in today_df.iterrows(): # 搞定 null 或者 decimal.Decimal 类型等 position = 0.0 if pd.isnull(x.position) else float(x.position) context.order_target_percent(x.instrument, position)# @param(id="m5", name="handle_trade")# 往复引擎:成交薪金搞定函数,每个成交发生时推论一次def m5_handle_trade_bigquant_run(context, trade): pass# @param(id="m5", name="handle_order")# 往复引擎:寄予薪金搞定函数,每个寄予变化时推论一次def m5_handle_order_bigquant_run(context, order): pass# @param(id="m5", name="after_trading")# 往复引擎:盘后搞定函数,逐日盘后推论一次def m5_after_trading_bigquant_run(context, data): pass

回测终局:

#量化#

返回

Powered by 物联网资讯网 RSS地图 HTML地图

Copyright Powered by站群 © 2013-2024