仓位管理

1固定损失管理
单次交易最大总仓位1%-3%(1%起步)

仓位=1%*总金额/最大损失股价

可以选3-4只股票减少风险

严格管理40%-60%

发表在 None | 留下评论

决策价格ATR

静态

止损价=买入价-k*ATR

止盈价=买入价+k*ATR

动态:

当前最高价(或近期高点) – k × ATR

或者

多头止损价 = 最新收盘价 – k × ATR ← 但这容易被噪音触发

或者(稳健)

止损价 = 该最高价 – k × ATR (持仓期间最高价)


止盈触发条件:价格从持仓期间最高点回撤 ≥ k × ATR”

即你买入后 回撤 > k*ATR 立即卖出

从你买入那天起,到今天为止,价格曾经达到过的最高价

  • 入场价:100 元
  • 价格上涨到 130 元(持仓最高点 = 130)
  • ATR = 6 元,k = 2 → 允许回撤 = 12 元
  • 止盈触发价 = 130 – 12 = 118 元

“从最高点回撤 ≥ k×ATR” 就像给利润装了一个“弹性保险绳”——
涨得越高,允许它回调的空间越大;
一旦回调超过市场正常波动范围,就果断放手。”

只要价格 < MA5,就不允许新开多单。

  • 只在价格 > MA5 时,才启用 ATR 止损做多(避免逆势交易)
  • 当价格跌破 MA5,即使 ATR 很小,也强制减仓(趋势已坏)

 一、核心逻辑:买入 = 趋势 + 动能 + 风险可控

在空仓时,买入决策通常要同时满足三个条件:

表格

维度指标作用
1. 趋势方向MA5(或更长均线)避免逆势交易
2. 动能/突破价格突破关键位捕捉启动信号
3. 波动率过滤ATR避免在“死水”中假突破

买入 = 同时 3 条

1)趋势:价格 > MA5,MA5 向上

2)突破:今日收盘突破 N 日高点,且阳线,涨幅 > 0.7 倍 ATR

3)波动:当前 ATR 不低于近 20 日 25 分位(排除死水)

发表在 None | 留下评论

计算数据 MA VOL-MA ATR RSI

import pandas as pd
import numpy as np
df=pd.read_csv("000021.csv")
# print(df.head())

# df["日期"] = pd.to_datetime(df["日期"])  # 转为时间格式
# df.sort_values("日期", inplace=True)    # 按日期正序排列


df['vol_ma5']=df["成交量"].rolling(window=5).mean()
df['vol_ma10']=df["成交量"].rolling(window=10).mean()
df['vol_ma20']=df["成交量"].rolling(window=20).mean()
df['vol_ma60']=df["成交量"].rolling(window=60).mean()

df['ma5']=df["收盘"].rolling(window=5).mean()
df['ma10']=df["收盘"].rolling(window=10).mean()
df['ma20']=df["收盘"].rolling(window=20).mean()
df['ma60']=df["收盘"].rolling(window=60).mean()

df['高低']=df['最高']-df['最低']
df['高收']=abs(df['最高']-df['收盘'].shift(1))
df['低收']=abs(df['最低']-df['收盘'].shift(1))
df['TR']=df[['高低','高收','低收']].abs().max(axis=1) #axis=1行计算

df['ATR'] = df['TR'].ewm(span=14, adjust=False).mean()

df['delta']=df['收盘'].diff()
df['gain']=df['delta'].where(df['delta']>0,0)
df['loss']=-df['delta'].where(df['delta']<0,0)
df['avg_gain']=df['gain'].rolling(14).mean()
df['avg_loss']=df['loss'].rolling(14).mean()


df['avg_loss'] = df['avg_loss'].replace(0, 1e-6)

df['rs']=df['avg_gain']/df['avg_loss']
df['rsi']=100-(100/(1+df['rs']))



df['money_ma5']=100*df['ma5']*df['vol_ma5']

df['status']=np.where((df['收盘']-df['开盘'])>0,'阳线','阴线')

df.to_csv("zzz.csv", index=False)

print(df.head(100))
发表在 None | 留下评论

大方向

ma atr vol-ma

rsi给参考

每日交易日结束给出计算结果

1 买入价

2 卖出价

第二日 触发买入价 买入 触发卖出价卖出

结合趋势制定 买入还是卖出

结合rsi判断

先搞一个分析。

输入股票代码 给出 日线周线及计算的rsi atr 等第二日 数据

重点 舱位管理

账本/ 损失管理/开多少仓 更具止损开仓位

发表在 None | 留下评论

拟合数据

df=pd.read_csv(“000021z.csv”)

发表在 None | 留下评论