Spaces:
Sleeping
Sleeping
Update app.py
Browse files
app.py
CHANGED
|
@@ -143,7 +143,19 @@ def init_db():
|
|
| 143 |
print("✅ Base de données V12 (Multi-Brain & Trailing Stop) Synchronisée.")
|
| 144 |
except Exception as e:
|
| 145 |
print(f"❌ Erreur critique création DB: {e}")
|
| 146 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 147 |
async def save_to_db(data):
|
| 148 |
try:
|
| 149 |
with sqlite3.connect(DB_NAME) as conn:
|
|
@@ -432,6 +444,16 @@ async def auto_predict_loop():
|
|
| 432 |
def keep_alive_ping():
|
| 433 |
return {"status": "awake", "time": datetime.now(timezone.utc).isoformat()}
|
| 434 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 435 |
async def check_data_count(symbol):
|
| 436 |
try:
|
| 437 |
ex = ExchangeManager.get_instance()
|
|
@@ -449,7 +471,7 @@ def run_judge_api():
|
|
| 449 |
conn.row_factory = sqlite3.Row
|
| 450 |
cursor = conn.cursor()
|
| 451 |
|
| 452 |
-
cursor.execute("SELECT * FROM signals WHERE status = 'EN_COURS'")
|
| 453 |
trades = cursor.fetchall()
|
| 454 |
|
| 455 |
if not trades:
|
|
|
|
| 143 |
print("✅ Base de données V12 (Multi-Brain & Trailing Stop) Synchronisée.")
|
| 144 |
except Exception as e:
|
| 145 |
print(f"❌ Erreur critique création DB: {e}")
|
| 146 |
+
|
| 147 |
+
|
| 148 |
+
conn = sqlite3.connect("alphatrade_v10.db")
|
| 149 |
+
cursor = conn.cursor()
|
| 150 |
+
try:
|
| 151 |
+
cursor.execute("ALTER TABLE signals ADD COLUMN confirmed INTEGER DEFAULT 0")
|
| 152 |
+
conn.commit()
|
| 153 |
+
print("✅ Colonne 'confirmed' ajoutée avec succès !")
|
| 154 |
+
except Exception as e:
|
| 155 |
+
print(f"ℹ️ {e}") # Probablement déjà existante
|
| 156 |
+
conn.close()
|
| 157 |
+
|
| 158 |
+
|
| 159 |
async def save_to_db(data):
|
| 160 |
try:
|
| 161 |
with sqlite3.connect(DB_NAME) as conn:
|
|
|
|
| 444 |
def keep_alive_ping():
|
| 445 |
return {"status": "awake", "time": datetime.now(timezone.utc).isoformat()}
|
| 446 |
|
| 447 |
+
def confirm_trade_api(trade_id):
|
| 448 |
+
try:
|
| 449 |
+
with sqlite3.connect(DB_NAME) as conn:
|
| 450 |
+
cursor = conn.cursor()
|
| 451 |
+
cursor.execute("UPDATE signals SET confirmed = 1 WHERE id = ?", (trade_id,))
|
| 452 |
+
conn.commit()
|
| 453 |
+
return {"status": "success", "message": f"Signal {trade_id} confirmé et activé."}
|
| 454 |
+
except Exception as e:
|
| 455 |
+
return {"status": "error", "message": str(e)}
|
| 456 |
+
|
| 457 |
async def check_data_count(symbol):
|
| 458 |
try:
|
| 459 |
ex = ExchangeManager.get_instance()
|
|
|
|
| 471 |
conn.row_factory = sqlite3.Row
|
| 472 |
cursor = conn.cursor()
|
| 473 |
|
| 474 |
+
cursor.execute("SELECT * FROM signals WHERE status = 'EN_COURS' AND confirmed = 1")
|
| 475 |
trades = cursor.fetchall()
|
| 476 |
|
| 477 |
if not trades:
|