You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
31 lines
776 B
31 lines
776 B
package trade |
|
|
|
import ( |
|
"sig-pub/pkg/types" |
|
) |
|
|
|
type IRickStrategy interface { |
|
OnSignal(signalSide types.Side) (ok bool, cause Cause) |
|
} |
|
|
|
type RiskStrategyParam struct { |
|
SkipOnSideOpposite bool // 当前持有反方向单时 |
|
SkipOnSideSame bool // 当前持有相同方向单时 |
|
} |
|
|
|
// RiskStrategy 风险管理策略 |
|
type RiskStrategy struct { |
|
} |
|
|
|
func NewRiskStrategy() *RiskStrategy { |
|
return &RiskStrategy{} |
|
} |
|
|
|
// SideAssess 收到信号时进行评估, 返回过滤后的交易信号 |
|
// 对交易方向进行信心分数评估, 后续开仓仓位 |
|
// 1.当前持有反方向单时, 不进行开仓 |
|
// 2.当前持有同方向单时, 根据信心分数评估是否加仓 |
|
func (s *RiskStrategy) SideAssess(signalSide types.Side) (side types.Side) { |
|
|
|
return signalSide |
|
}
|
|
|