Files
sfgrid/core/strategy_db.py
T
2025-11-10 14:49:35 +08:00

36 lines
1.1 KiB
Python

from peewee import SqliteDatabase, Model, CharField, IntegerField, FloatField, BooleanField
from xtquant import xtconstant
# 连接到SQLite数据库
db = SqliteDatabase('example.db')
# 定义基础模型类
class BaseModel(Model):
class Meta:
database = db
OrderTypeBuy = f'{xtconstant.STOCK_BUY}' # 买
OrderTypeSell = f'{xtconstant.STOCK_SELL}' # 卖
OrderTypeInit = "0" # 建仓
OrderTypeNone = "None"
# 定义Target类,对应targets表
class TradeTarget(BaseModel):
stock_code = CharField(unique=True)
stock_name = CharField()
market_price = FloatField()
current_position = IntegerField()
grid_index = IntegerField()
last_trade_price = FloatField()
plan_buy_price = FloatField()
plan_sell_price = FloatField()
current_order_price = FloatField()
current_order_no = CharField(default='')
current_order_type = CharField(default='')
status = IntegerField(default=0) # 0表示新标的,1表示已建初始仓,正常交易中
enabled = BooleanField(default=False) # 是否启动交易线程
def targetName(self):
return f'{self.stock_name}[{self.stock_code}]'