问财量化选股策略逻辑
选股逻辑为:在换手率3%到12%、外盘/内盘比例大于1.3、流通盘小于等于55亿股的股票中选择。
选股逻辑分析
这个选股逻辑同时考虑了流动性、市场情况和股本情况。流通盘小于等于55亿股可以过滤掉一些市值较大股票,同时换手率、外盘/内盘比例也反映了市场情况和流动性。
有何风险?
这个选股逻辑可能会漏选一些收益表现较好,但流通盘较大的股票,同时也可能会选出一些流通盘虽小但收益表现平平的股票。此外,一些外部风险,例如政策不确定性等,也可能对选股结果产生影响。
如何优化?
可以考虑增加选股逻辑,引入更多衡量市场趋势的指标,例如价格走势、投资者情绪等,来更好地反映市场情况。同时,可以结合自己的投资风格,来选择适合自己的标的。
最终的选股逻辑
在换手率3%到12%、外盘/内盘比例大于1.3、流通盘小于等于55亿股的股票中选择。
同花顺指标公式代码参考
以下是同花顺指标所需公式:
选股公式:
SELECT a.Code FROM
(
SELECT CODE, OUTVOLUME/INVOLUME AS QY
FROM
(
SELECT CODE,
(NZ(C1,0)+NZ(C2,0))/2 AS CLOSE,
(NZ(H1,0)+NZ(H2,0))/2 AS HIGH,
(NZ(L1,0)+NZ(L2,0))/2 AS LOW,
INVOLUME, OUTVOLUME, SECONDARYRCCGSL
FROM DSJ
WHERE ITEM = 4
AND (DAY = (SELECT tradingday FROM STOCK_TRADING_DAY WHERE LAST_TRADING_DAY<CURRENT_DATE ORDER BY LAST_TRADING_DAY DESC LIMIT 1))
) AS A
WHERE (HIGH-LOW)/(HIGH+LOW)<0.15 AND (HIGH-CLOSE)/(CLOSE-LOW) BETWEEN 1 AND 1.3
) AS A, JGCC AS B
WHERE A.CODE = B.CODE
AND (A.QY > 1.3) AND (B.CGSL <= 55);
Python代码参考
import pandas as pd
from typing import List
def select_stock(data: pd.DataFrame) -> List[str]:
selected_stocks = []
for code, df in data.groupby(level=0):
high = df['high'].iloc[-1]
low = df['low'].iloc[-1]
close = df['price'].iloc[-1]
circulate_market_cap = df['circulating_market_cap'].iloc[-1]
if (df['turnoverratio'].iloc[-1] > 3 and \
df['turnoverratio'].iloc[-1] < 12 and \
(high - low) / (high + low) < 0.15 and \
(high - close) / (close - low) > 1 and \
(high - close) / (close - low) < 1.3 and \
circulate_market_cap <= 5500000000):
selected_stocks.append(code)
return selected_stocks
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。
