结束阶段做表功能

This commit is contained in:
guoyz 2025-05-09 22:42:59 +08:00
parent 3414c4fa7c
commit c4de17b7ec
4 changed files with 13 additions and 11 deletions

View File

@ -83,7 +83,7 @@ def get_latest_email_body(to_email):
print('ID #%d: "%s" received %s' % (msgid, subject, envelope.date))
print('Body:', body)
def parse_return_email(to_email, send_email_time):
def parse_return_email(to_email, send_email_time):
"""解析回信邮件body中的内容
根据"实际买入价格-买入份额-手续费"
@ -153,7 +153,7 @@ def get_latest_email_body(to_email):
fee = body.split("-")[2]
return parse_states, price, share, fee
def check_email(to_email, send_email_time):
def check_email(to_email, send_email_time):
"""检查回信邮件是否已经收到
"""
mail = IMAPClient("imap.126.com")

View File

@ -72,7 +72,7 @@ class TurtleTrading(object):
self.Capital = Capital
self.cash = cash
self.TrigerTime = 0
self.BuyStates = list[BuyState] = []
self.BuyStates = list[BuyState]
self.tradeslog = list[TradeLog] # 交易记录
@ -638,10 +638,10 @@ class TurtleTrading_OnTime(object):
# ------------------准备阶段--------------------
# 获取数据或读取数据 -- 计算ATR Donchian 20 50 up, 20 down
self.turtle.get_ready(100)
self.turtle.N = self.turtle.CurrentData['ATR'].iloc[-1]
self.turtle.Donchian_20_up = self.turtle.CurrentData['Donchian_20_upper'].iloc[-1]
self.turtle.Donchian_50_up = self.turtle.CurrentData['Donchian_50_upper'].iloc[-1]
self.turtle.Donchian_10_down = self.turtle.CurrentData['Donchian_10_lower'].iloc[-1]
self.turtle.N = float(self.turtle.CurrentData['ATR'].iloc[-1])
self.turtle.Donchian_20_up = float(self.turtle.CurrentData['Donchian_20_upper'].iloc[-1])
self.turtle.Donchian_50_up = float(self.turtle.CurrentData['Donchian_50_upper'].iloc[-1])
self.turtle.Donchian_10_down = float(self.turtle.CurrentData['Donchian_10_lower'].iloc[-1])
self.turtle.CalPositionSize()
# ------------------实时监测阶段--------------------
# 9:00 1、判断是否是新的一周是则重新计算Position Size
@ -653,16 +653,18 @@ class TurtleTrading_OnTime(object):
self.run_short_trading_loop()
# ------------------结束阶段--------------------
# 数据库更新当天数据增加ATR、donchian数据
pass
# 直接做个新表
mysql_database.delete_table(f"{self.turtle.TradeCode}")
self.turtle.get_ready(100)
time.sleep(16.5*600)
if __name__ == '__main__':
user_email = "guoyize2209@163.com"
t = TurtleTrading('513300', "etf", 0.25, 100000, 200000)
t = TurtleTrading('513300', "etf", 0.0025, 100000, 200000)
# t.get_ready(100)
a = TurtleTrading_OnTime(t)
a.Start_S1_system()
a = TurtleTrading_OnTime(t, user_email)
a.Start_short_system()
# # 全是股票
# stock_zh_a_spot_df = ak.stock_zh_a_spot_em()

Binary file not shown.