deving
This commit is contained in:
@@ -7,7 +7,7 @@ import (
|
|||||||
"git.apinb.com/quant/gostock/internal/impl"
|
"git.apinb.com/quant/gostock/internal/impl"
|
||||||
"git.apinb.com/quant/gostock/internal/logic/strategy"
|
"git.apinb.com/quant/gostock/internal/logic/strategy"
|
||||||
"git.apinb.com/quant/gostock/internal/logic/strategy/rule"
|
"git.apinb.com/quant/gostock/internal/logic/strategy/rule"
|
||||||
"git.apinb.com/quant/gostock/internal/logic/types"
|
"git.apinb.com/quant/gostock/internal/models"
|
||||||
)
|
)
|
||||||
|
|
||||||
var (
|
var (
|
||||||
@@ -21,11 +21,12 @@ func main() {
|
|||||||
|
|
||||||
var okStocks []string
|
var okStocks []string
|
||||||
for _, code := range strategy.GetStocks() {
|
for _, code := range strategy.GetStocks() {
|
||||||
if ok, desc := RuleFilter(code); ok {
|
basic := strategy.GetBasic(code)
|
||||||
|
if ok, desc := RuleFilter(basic); ok {
|
||||||
okStocks = append(okStocks, code)
|
okStocks = append(okStocks, code)
|
||||||
log.Println(code, desc)
|
log.Println(code, basic.Name, "===>", "OK!")
|
||||||
} else {
|
} else {
|
||||||
log.Println(code, "OK")
|
log.Println(code, basic.Name, desc)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -34,21 +35,25 @@ func main() {
|
|||||||
log.Println("Done!")
|
log.Println("Done!")
|
||||||
}
|
}
|
||||||
|
|
||||||
func RuleFilter(code string) (bool, string) {
|
func RuleFilter(basic *models.StockBasic) (bool, string) {
|
||||||
basic := strategy.GetBasic(code)
|
if re := rule.NewUpDate().Run(basic.ListDate); re.Score <= 0 {
|
||||||
result := []*types.RuleResult{
|
return false, re.Desc
|
||||||
rule.NewUpDate().Run(basic.ListDate),
|
|
||||||
rule.NewST().Run(basic.Name),
|
|
||||||
rule.NewIdustry().Run(basic.Industry),
|
|
||||||
rule.NewPrice().Run(basic.TsCode),
|
|
||||||
rule.NewAmount().Run(basic.TsCode),
|
|
||||||
}
|
}
|
||||||
|
|
||||||
for _, re := range result {
|
if re := rule.NewST().Run(basic.Name); re.Score <= 0 {
|
||||||
if re.Score <= 0 {
|
return false, re.Desc
|
||||||
return false, re.Desc
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return true, "通过"
|
if re := rule.NewIdustry().Run(basic.Industry); re.Score <= 0 {
|
||||||
|
return false, re.Desc
|
||||||
|
}
|
||||||
|
|
||||||
|
if re := rule.NewPrice().Run(basic.TsCode); re.Score <= 0 {
|
||||||
|
return false, re.Desc
|
||||||
|
}
|
||||||
|
|
||||||
|
if re := rule.NewAmount().Run(basic.TsCode); re.Score <= 0 {
|
||||||
|
return false, re.Desc
|
||||||
|
}
|
||||||
|
return true, ""
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2,6 +2,8 @@ package impl
|
|||||||
|
|
||||||
import (
|
import (
|
||||||
"git.apinb.com/bsm-sdk/core/cache/redis"
|
"git.apinb.com/bsm-sdk/core/cache/redis"
|
||||||
|
"git.apinb.com/bsm-sdk/core/types"
|
||||||
|
"git.apinb.com/bsm-sdk/core/vars"
|
||||||
"git.apinb.com/bsm-sdk/core/with"
|
"git.apinb.com/bsm-sdk/core/with"
|
||||||
"git.apinb.com/quant/gostock/internal/config"
|
"git.apinb.com/quant/gostock/internal/config"
|
||||||
"gorm.io/gorm"
|
"gorm.io/gorm"
|
||||||
@@ -15,7 +17,15 @@ var (
|
|||||||
func NewImpl() {
|
func NewImpl() {
|
||||||
// 初始化 Redis 缓存
|
// 初始化 Redis 缓存
|
||||||
RedisService = with.RedisCache(config.Spec.Cache)
|
RedisService = with.RedisCache(config.Spec.Cache)
|
||||||
DBService = with.Databases(config.Spec.Databases, nil) // model
|
|
||||||
|
// model
|
||||||
|
DBService = with.Databases(config.Spec.Databases, &types.SqlOptions{
|
||||||
|
MaxIdleConns: vars.SqlOptionMaxIdleConns,
|
||||||
|
MaxOpenConns: vars.SqlOptionMaxOpenConns,
|
||||||
|
ConnMaxLifetime: vars.SqlOptionConnMaxLifetime,
|
||||||
|
LogStdout: false,
|
||||||
|
Debug: false,
|
||||||
|
})
|
||||||
|
|
||||||
with.Logger(config.Spec.Log)
|
with.Logger(config.Spec.Log)
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user