This commit is contained in:
yanweidong
2026-01-29 00:35:41 +08:00
parent 8679ff706f
commit d178a1b353
6 changed files with 5601 additions and 5496 deletions

View File

@@ -3,6 +3,7 @@ package rule
import (
"fmt"
"git.apinb.com/bsm-sdk/core/utils"
"git.apinb.com/quant/gostock/internal/impl"
"git.apinb.com/quant/gostock/internal/logic/types"
"git.apinb.com/quant/gostock/internal/models"
@@ -32,9 +33,11 @@ func (r *Roe) Run(code string) *types.RuleResult {
return &types.RuleResult{Key: r.Key, Name: r.Name, Score: -1, Desc: "最近无财报无ROE值"}
}
data.Roe = utils.FloatRound(data.Roe, 2)
if data.Roe < MinRoe {
return &types.RuleResult{Key: r.Key, Name: r.Name, Score: -1, Desc: fmt.Sprintf("ROE=%.2f 低于%.2f", data.Roe, MinRoe)}
}
return &types.RuleResult{Key: r.Key, Name: r.Name, Score: 1, Desc: fmt.Sprintf("ROE=%.2f 高于%.2f", data.Roe, MinRoe)}
return &types.RuleResult{Key: r.Key, Name: r.Name, Score: 1, Roe: data.Roe, Desc: fmt.Sprintf("ROE=%.2f 高于%.2f", data.Roe, MinRoe)}
}

View File

@@ -4,6 +4,7 @@ import (
"encoding/json"
"fmt"
"git.apinb.com/bsm-sdk/core/utils"
"git.apinb.com/quant/gostock/internal/impl"
"git.apinb.com/quant/gostock/internal/logic/types"
"git.apinb.com/quant/gostock/internal/models"
@@ -65,9 +66,10 @@ func (r *Rsi) Run(code string) *types.RuleResult {
rsiResult := talib.Rsi(close, r.Args.RsiPeriod)
lastRsi := rsiResult[len(rsiResult)-1]
lastRsi = utils.FloatRound(lastRsi, 2)
if lastRsi > float64(r.Args.RsiOversold) {
return &types.RuleResult{Key: r.Key, Name: r.Name, Score: -1, Desc: fmt.Sprintf("RSI=%.2f 高于%d", lastRsi, r.Args.RsiOversold)}
}
return &types.RuleResult{Key: r.Key, Name: r.Name, Score: 1, Desc: fmt.Sprintf("RSI=%.2f 低于%d", lastRsi, r.Args.RsiOversold)}
return &types.RuleResult{Key: r.Key, Name: r.Name, Score: 1, Rsi: lastRsi, Desc: fmt.Sprintf("RSI=%.2f 低于%d", lastRsi, r.Args.RsiOversold)}
}

View File

@@ -4,5 +4,7 @@ type RuleResult struct {
Key string
Name string
Score int
Roe float64
Rsi float64
Desc string
}