Skip to content

Marmot93/TransactionPlanning

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

TransactionPlanning

这是一个围绕红利低波100指数的交易规划小工具,核心决策逻辑由 Decide(input, current) 提供。它根据当前指数点位、120 日均线、20 日均线以及当前仓位状态,返回本次应执行的操作建议。

Decide 交易规则

Decide 的核心思路是分三段处理:

  • 当指数相对 120 日均线偏离不大时,继续持有观察。
  • 当指数进入高位区间时,按预设阈值分两步减仓。
  • 当高位阶段结束并出现回落确认后清仓,随后等待深度回撤再重新满仓。

输入参数说明

  • IndexValue:当前指数点位。
  • MA120:当前 120 日均线。
  • MA20:当前 20 日均线。
  • State.Position:当前仓位状态。
  • State.HighPhase:是否已经进入过高位阶段。

其中仓位的固定含义如下:

  • 1.0:满仓
  • 2/3:第一次减仓后
  • 1/3:第二次减仓后
  • 0:空仓

规则顺序

策略按下面的顺序判断:

  1. 先计算 120 日乖离率:biasPct = (IndexValue / MA120 - 1) * 100
  2. 如果当前已经是空仓,则不再执行减仓或清仓逻辑,只判断是否满足重新满仓条件。
  3. 如果 120 日乖离率达到或超过 8%,策略进入高位阶段;若当前仓位高于 2/3,则减仓到 2/3
  4. 如果 120 日乖离率达到或超过 10%,且当前仓位仍高于 1/3,则进一步减仓到 1/3
  5. 只有在已经进入过高位阶段之后,若指数跌破 MA20,才触发清仓。
  6. 清仓后进入空仓状态;只有当指数低于 MA120 * 0.97 时,才重新满仓。

各条交易规则的中文说明

1. 乖离率低于 8%

biasPct < 8% 时,默认不触发新的交易动作,继续持有观察。

2. 乖离率达到 8%

biasPct >= 8% 时,说明指数已经进入高位阶段,HighPhase 会被置为 true

如果此时当前仓位高于 2/3,则建议先减仓到 2/3

3. 乖离率达到 10%

biasPct >= 10% 时,如果当前仓位仍高于 1/3,则建议继续减仓到 1/3

这一步只会发生在前一步减仓之后仍有更高仓位,或者外部传入的当前仓位本来就高于 1/3 的情况下。

4. 高位后跌破 MA20 清仓

只有在此前已经出现过高位阶段,也就是 HighPhase = true 的前提下,指数跌破 MA20 才被视为卖出剩余仓位的确认信号。

满足这个条件时,策略建议清仓,并把仓位更新为 0,同时把 HighPhase 重置为 false

5. 空仓后跌到 MA120 的 97% 以下重新满仓

当当前仓位已经是空仓时,策略只看是否满足重新进场条件。

如果 IndexValue < MA120 * 0.97,则认为已经出现足够回撤,建议重新满仓,同时把 HighPhase 重置为 false

如果还没有跌到这个位置,则继续保持空仓等待。

动作说明

Decide 可能返回以下动作:

  • hold:继续持有或继续空仓等待,不执行新的买卖动作。
  • reduce_to_2_3:减仓到 2/3
  • reduce_to_1_3:减仓到 1/3
  • clear_all:清掉剩余仓位。
  • reenter_full:从空仓重新买回到满仓。

状态流转说明

  • biasPct >= 8% 时,会进入高位阶段,HighPhase 变为 true
  • 进入高位阶段后,不代表立刻清仓;只有后续跌破 MA20 才清仓。
  • 清仓后,Position 变为 0HighPhase 重置为 false
  • 重新满仓后,Position 回到 1.0HighPhase 也保持为 false,等待下一轮高位信号。

使用提醒

  • 这个函数返回的是“当前时点的操作建议”,并不强制规定必须在同一时点成交。
  • 是否在次日执行、是否接入实际交易系统,由调用方自行决定。
  • README 的说明以当前代码实现为准;如果后续修改了 Decide 逻辑,文档也应同步更新。

About

红利低波100的交易规划器

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages