Files
gostock/internal/logic/strategy/rule/amount.go
yanweidong 32cbe88964 deving
2026-01-31 18:22:58 +08:00

38 lines
759 B
Go

package rule
import (
"fmt"
"log"
"git.apinb.com/quant/gostock/internal/impl"
"git.apinb.com/quant/gostock/internal/models"
)
var (
LastAmountDay = 20
MinAmount float64 = 100000 // 万元为单位
)
func (r *RuleFactory) RunAmount(code string) {
log.Println("RunAmount:", r.Model.Code, "Args:", LastAmountDay, MinAmount)
var data []models.StockDaily
impl.DBService.Where("ts_code = ?", code).Order("trade_date desc").Limit(LastAmountDay).Find(&data)
check := true
for _, row := range data {
if row.Amount < MinPrice {
check = false
break
}
}
if !check {
r.Model.GtAmount = -1
r.Model.AddDesc(fmt.Sprintf("最近%d天, 有成交额低于%.2f万元", LastAmountDay, MinAmount))
return
}
r.Model.GtAmount = 1
}