Speed bot v1: REST polling, MLX model, standardized across all infra. WebSocket WIP.
This commit is contained in:
Binary file not shown.
2
bnb.json
2
bnb.json
@@ -21,7 +21,7 @@
|
|||||||
"decision_interval_sec": 600,
|
"decision_interval_sec": 600,
|
||||||
"start_delay_sec": 375,
|
"start_delay_sec": 375,
|
||||||
"fast_llm_url": "http://localhost:11434",
|
"fast_llm_url": "http://localhost:11434",
|
||||||
"fast_llm_model": "qwen3.5:4b",
|
"fast_llm_model": "qwen3.5:4b-mlx",
|
||||||
"deep_llm_url": "http://10.30.20.186:11434",
|
"deep_llm_url": "http://10.30.20.186:11434",
|
||||||
"deep_llm_model": "ornith:latest",
|
"deep_llm_model": "ornith:latest",
|
||||||
"color": "#F0B90B",
|
"color": "#F0B90B",
|
||||||
|
|||||||
223
bot.log
223
bot.log
@@ -23764,3 +23764,226 @@ sqlite3.OperationalError: no such column: id
|
|||||||
2026-08-03 23:24:30,992 ⚡ micro-swing 0.03%+ in 60s on KXSOL15M-26AUG040230-30 — evaluating entry
|
2026-08-03 23:24:30,992 ⚡ micro-swing 0.03%+ in 60s on KXSOL15M-26AUG040230-30 — evaluating entry
|
||||||
2026-08-03 23:24:36,825 skip KXETH15M-26AUG040230-30: conf 0.65<0.80 (adaptive)
|
2026-08-03 23:24:36,825 skip KXETH15M-26AUG040230-30: conf 0.65<0.80 (adaptive)
|
||||||
2026-08-03 23:24:42,329 skip KXSOL15M-26AUG040230-30: BTC +1.2% 24h — no counter-trend shorts (conf 0.65<0.78)
|
2026-08-03 23:24:42,329 skip KXSOL15M-26AUG040230-30: BTC +1.2% 24h — no counter-trend shorts (conf 0.65<0.78)
|
||||||
|
2026-08-03 23:24:58,402 ⚡ micro-swing 0.03%+ in 60s on KXETH15M-26AUG040230-30 — evaluating entry
|
||||||
|
2026-08-03 23:24:58,700 ⚡ micro-swing 0.03%+ in 60s on KXSOL15M-26AUG040230-30 — evaluating entry
|
||||||
|
2026-08-03 23:25:06,546 skip KXETH15M-26AUG040230-30: conf 0.65<0.80 (adaptive)
|
||||||
|
2026-08-03 23:25:08,457 skip KXSOL15M-26AUG040230-30: conf 0.65<0.80 (adaptive)
|
||||||
|
2026-08-03 23:25:10,413 ⚡ micro-swing 0.03%+ in 60s on KXXRP15M-26AUG040230-30 — evaluating entry
|
||||||
|
2026-08-03 23:25:28,710 K4LSH1_OPS online — mode=AUTO dry_run=False stake=10¢ max_spend=100¢
|
||||||
|
2026-08-03 23:25:30,652 K4LSH1_OPS online — mode=AUTO dry_run=False stake=10¢ max_spend=100¢
|
||||||
|
2026-08-03 23:25:30,652 staggering start by 75s
|
||||||
|
2026-08-03 23:25:32,663 K4LSH1_OPS online — mode=AUTO dry_run=False stake=10¢ max_spend=100¢
|
||||||
|
2026-08-03 23:25:32,663 staggering start by 150s
|
||||||
|
2026-08-03 23:25:34,689 K4LSH1_OPS online — mode=AUTO dry_run=False stake=10¢ max_spend=100¢
|
||||||
|
2026-08-03 23:25:34,689 staggering start by 225s
|
||||||
|
2026-08-03 23:25:36,733 K4LSH1_OPS online — mode=AUTO dry_run=False stake=10¢ max_spend=100¢
|
||||||
|
2026-08-03 23:25:36,733 staggering start by 300s
|
||||||
|
2026-08-03 23:25:38,882 K4LSH1_OPS online — mode=AUTO dry_run=False stake=10¢ max_spend=100¢
|
||||||
|
2026-08-03 23:25:38,882 staggering start by 375s
|
||||||
|
2026-08-03 23:25:40,810 K4LSH1_OPS online — mode=AUTO dry_run=False stake=10¢ max_spend=100¢
|
||||||
|
2026-08-03 23:25:40,810 staggering start by 450s
|
||||||
|
2026-08-03 23:25:42,438 skip KXDOGE15M-26AUG040230-30: BTC +0.9% 24h — no counter-trend shorts (conf 0.65<0.78)
|
||||||
|
2026-08-03 23:25:42,728 K4LSH1_OPS online — mode=AUTO dry_run=False stake=10¢ max_spend=100¢
|
||||||
|
2026-08-03 23:25:42,728 staggering start by 525s
|
||||||
|
2026-08-03 23:26:58,901 skip KXSOL15M-26AUG040230-30: BTC +1.2% 24h — no counter-trend shorts (conf 0.65<0.78)
|
||||||
|
2026-08-03 23:27:54,760 ⚡ micro-swing 0.03%+ in 60s on KXDOGE15M-26AUG040230-30 — evaluating entry
|
||||||
|
2026-08-03 23:28:02,611 skip KXDOGE15M-26AUG040230-30: BTC +0.9% 24h — no counter-trend shorts (conf 0.65<0.78)
|
||||||
|
2026-08-03 23:28:23,383 [fast-gate DOWN 0.85] skipping ornith — qwen confident
|
||||||
|
2026-08-03 23:28:23,389 daily loss cap hit — sitting out
|
||||||
|
2026-08-03 23:28:32,052 ⚡ micro-swing 0.03%+ in 60s on KXETH15M-26AUG040230-30 — evaluating entry
|
||||||
|
2026-08-03 23:28:32,180 ⚡ micro-swing 0.03%+ in 60s on KXSOL15M-26AUG040230-30 — evaluating entry
|
||||||
|
2026-08-03 23:28:39,954 skip KXETH15M-26AUG040230-30: conf 0.65<0.80 (adaptive)
|
||||||
|
2026-08-03 23:28:41,637 skip KXSOL15M-26AUG040230-30: BTC +1.2% 24h — no counter-trend shorts (conf 0.65<0.78)
|
||||||
|
2026-08-03 23:29:39,050 skip KXXRP15M-26AUG040230-30: passes: [split qwen=SKIP(0.50) ornith=SKIP(0.50)] No clear edge; RSI flat, BTC neutral
|
||||||
|
2026-08-03 23:30:36,758 ⚖ BTC WR=32% → stake $1.00→$0.75 (bets:56)
|
||||||
|
2026-08-03 23:30:40,161 LOSS KXXRP15M-26AUG040230-30 yes@50¢ → no (-50¢)
|
||||||
|
2026-08-03 23:30:58,737 [fast-gate DOWN 0.85] skipping ornith — qwen confident
|
||||||
|
2026-08-03 23:30:58,740 daily loss cap hit — sitting out
|
||||||
|
2026-08-03 23:32:09,229 skip KXBNB15M-26AUG040245-45: passes: [split qwen=SKIP(0.50) ornith=SKIP(0.50)] No clear edge; RSI=0, thin signal
|
||||||
|
2026-08-03 23:33:10,819 ⚖ NEAR WR=14% → stake $1.00→$0.75 (bets:14)
|
||||||
|
2026-08-03 23:33:11,632 ⚡ micro-swing 0.03%+ in 60s on KXDOGE15M-26AUG040245-45 — evaluating entry
|
||||||
|
2026-08-03 23:33:24,273 daily loss cap hit — sitting out
|
||||||
|
2026-08-03 23:33:25,561 skip KXNEAR15M-26AUG040245-45: BTC +1.5% 24h — no counter-trend shorts (conf 0.65<0.78)
|
||||||
|
2026-08-03 23:33:25,794 ⚡ micro-swing 0.03%+ in 60s on KXDOGE15M-26AUG040245-45 — evaluating entry
|
||||||
|
2026-08-03 23:33:35,515 daily loss cap hit — sitting out
|
||||||
|
2026-08-03 23:33:36,249 ⚡ micro-swing 0.03%+ in 60s on KXXRP15M-26AUG040245-45 — evaluating entry
|
||||||
|
2026-08-03 23:33:37,128 ⚡ micro-swing 0.03%+ in 60s on KXDOGE15M-26AUG040245-45 — evaluating entry
|
||||||
|
2026-08-03 23:33:45,860 skip KXXRP15M-26AUG040245-45: conf 0.75<0.80 (adaptive)
|
||||||
|
2026-08-03 23:33:46,669 daily loss cap hit — sitting out
|
||||||
|
2026-08-03 23:33:47,763 ⚡ micro-swing 0.03%+ in 60s on KXSOL15M-26AUG040245-45 — evaluating entry
|
||||||
|
2026-08-03 23:33:48,208 ⚡ micro-swing 0.03%+ in 60s on KXDOGE15M-26AUG040245-45 — evaluating entry
|
||||||
|
2026-08-03 23:33:57,853 daily loss cap hit — sitting out
|
||||||
|
2026-08-03 23:34:00,711 daily loss cap hit — sitting out
|
||||||
|
2026-08-03 23:34:02,278 ⚡ micro-swing 0.03%+ in 60s on KXSOL15M-26AUG040245-45 — evaluating entry
|
||||||
|
2026-08-03 23:34:08,998 [fast-gate DOWN 0.85] skipping ornith — qwen confident
|
||||||
|
2026-08-03 23:34:09,004 daily loss cap hit — sitting out
|
||||||
|
2026-08-03 23:34:10,316 ⚡ micro-swing 0.03%+ in 60s on KXSOL15M-26AUG040245-45 — evaluating entry
|
||||||
|
2026-08-03 23:34:20,037 daily loss cap hit — sitting out
|
||||||
|
2026-08-03 23:34:21,534 ⚡ micro-swing 0.03%+ in 60s on KXSOL15M-26AUG040245-45 — evaluating entry
|
||||||
|
2026-08-03 23:34:27,743 ⚖ ZEC WR=22% → stake $1.00→$0.75 (bets:18)
|
||||||
|
2026-08-03 23:34:31,118 skip KXSOL15M-26AUG040245-45: passes: [split qwen=SKIP(0.50) ornith=SKIP(0.95)] RSI neutral, no spike detected
|
||||||
|
2026-08-03 23:34:52,409 skip KXZEC15M-26AUG040245-45: passes: [split qwen=SKIP(0.50) ornith=SKIP(0.50)] RSI oversold, weak trend, high risk
|
||||||
|
2026-08-03 23:34:53,629 ⚡ micro-swing 0.03%+ in 60s on KXDOGE15M-26AUG040245-45 — evaluating entry
|
||||||
|
2026-08-03 23:35:00,953 skip KXDOGE15M-26AUG040245-45: passes: [split qwen=SKIP(0.50) ornith=SKIP(0.95)] Extreme fear + choppy regime, no clear edge
|
||||||
|
2026-08-03 23:37:31,504 ⚡ micro-swing 0.03%+ in 60s on KXETH15M-26AUG040245-45 — evaluating entry
|
||||||
|
2026-08-03 23:37:33,617 ⚡ micro-swing 0.03%+ in 60s on KXSOL15M-26AUG040245-45 — evaluating entry
|
||||||
|
2026-08-03 23:37:41,620 skip KXSOL15M-26AUG040245-45: BTC +1.2% 24h — no counter-trend shorts (conf 0.65<0.78)
|
||||||
|
2026-08-03 23:37:46,271 ⚡ micro-swing 0.03%+ in 60s on KXBTC15M-26AUG040245-45 — evaluating entry
|
||||||
|
2026-08-03 23:37:46,347 ⚡ micro-swing 0.03%+ in 60s on KXBNB15M-26AUG040245-45 — evaluating entry
|
||||||
|
2026-08-03 23:37:46,893 ⚡ micro-swing 0.03%+ in 60s on KXNEAR15M-26AUG040245-45 — evaluating entry
|
||||||
|
2026-08-03 23:37:49,108 ⚡ micro-swing 0.03%+ in 60s on KXZEC15M-26AUG040245-45 — evaluating entry
|
||||||
|
2026-08-03 23:37:49,658 [fast-gate DOWN 0.85] skipping ornith — qwen confident
|
||||||
|
2026-08-03 23:37:49,662 daily loss cap hit — sitting out
|
||||||
|
2026-08-03 23:37:51,953 ⚡ micro-swing 0.03%+ in 60s on KXETH15M-26AUG040245-45 — evaluating entry
|
||||||
|
2026-08-03 23:37:56,594 skip KXNEAR15M-26AUG040245-45: BTC +1.5% 24h — no counter-trend shorts (conf 0.65<0.78)
|
||||||
|
2026-08-03 23:37:58,523 skip KXZEC15M-26AUG040245-45: passes: [split qwen=SKIP(0.50) ornith=SKIP(0.50)] RSI=0 oversold, no clear edge
|
||||||
|
2026-08-03 23:37:59,317 skip KXBNB15M-26AUG040245-45: passes: [split qwen=SKIP(0.50) ornith=SKIP(0.50)] No clear edge; RSI=0, extreme fear, thin signal
|
||||||
|
2026-08-03 23:38:01,501 skip KXETH15M-26AUG040245-45: conf 0.75<0.80 (adaptive)
|
||||||
|
2026-08-03 23:38:03,516 ⚡ micro-swing 0.03%+ in 60s on KXXRP15M-26AUG040245-45 — evaluating entry
|
||||||
|
2026-08-03 23:38:07,044 skip KXBTC15M-26AUG040245-45: BTC +1.6% 24h — no counter-trend shorts (conf 0.65<0.78)
|
||||||
|
2026-08-03 23:38:14,753 skip KXXRP15M-26AUG040245-45: passes: [split qwen=SKIP(0.50) ornith=SKIP(0.50)] No clear edge; extreme fear + oversold RSI suggest
|
||||||
|
2026-08-03 23:38:46,651 ⚡ micro-swing 0.03%+ in 60s on KXDOGE15M-26AUG040245-45 — evaluating entry
|
||||||
|
2026-08-03 23:38:57,042 skip KXDOGE15M-26AUG040245-45: passes: [split qwen=SKIP(0.50) ornith=SKIP(0.50)] Choppy regime, no clear edge
|
||||||
|
2026-08-03 23:39:21,556 ⚡ micro-swing 0.03%+ in 60s on KXXRP15M-26AUG040245-45 — evaluating entry
|
||||||
|
2026-08-03 23:39:29,709 skip KXXRP15M-26AUG040245-45: conf 0.65<0.80 (adaptive)
|
||||||
|
2026-08-03 23:39:51,015 ⚡ micro-swing 0.03%+ in 60s on KXSOL15M-26AUG040245-45 — evaluating entry
|
||||||
|
2026-08-03 23:39:51,872 ⚡ micro-swing 0.03%+ in 60s on KXBNB15M-26AUG040245-45 — evaluating entry
|
||||||
|
2026-08-03 23:39:51,959 ⚡ micro-swing 0.03%+ in 60s on KXNEAR15M-26AUG040245-45 — evaluating entry
|
||||||
|
2026-08-03 23:39:53,042 ⚡ micro-swing 0.03%+ in 60s on KXZEC15M-26AUG040245-45 — evaluating entry
|
||||||
|
2026-08-03 23:39:53,043 ⚡ micro-swing 0.03%+ in 60s on KXETH15M-26AUG040245-45 — evaluating entry
|
||||||
|
2026-08-03 23:39:53,057 ⚡ micro-swing 0.03%+ in 60s on KXBTC15M-26AUG040245-45 — evaluating entry
|
||||||
|
2026-08-03 23:39:59,970 skip KXBNB15M-26AUG040245-45: BTC +1.6% 24h — no counter-trend shorts (conf 0.65<0.78)
|
||||||
|
2026-08-03 23:40:02,630 skip KXETH15M-26AUG040245-45: passes: [split qwen=SKIP(0.50) ornith=SKIP(0.50)] Extreme fear + oversold RSI = no clear fade edge
|
||||||
|
2026-08-03 23:40:03,543 skip KXBTC15M-26AUG040245-45: BTC +1.6% 24h — no counter-trend shorts (conf 0.65<0.78)
|
||||||
|
2026-08-03 23:40:04,340 skip KXSOL15M-26AUG040245-45: BTC +1.2% 24h — no counter-trend shorts (conf 0.65<0.78)
|
||||||
|
2026-08-03 23:40:04,642 ⚡ micro-swing 0.03%+ in 60s on KXDOGE15M-26AUG040245-45 — evaluating entry
|
||||||
|
2026-08-03 23:40:05,214 skip KXNEAR15M-26AUG040245-45: BTC +1.6% 24h — no counter-trend shorts (conf 0.65<0.78)
|
||||||
|
2026-08-03 23:40:11,641 [fast-gate DOWN 0.85] skipping ornith — qwen confident
|
||||||
|
2026-08-03 23:40:11,648 daily loss cap hit — sitting out
|
||||||
|
2026-08-03 23:40:13,721 ⚡ micro-swing 0.03%+ in 60s on KXZEC15M-26AUG040245-45 — evaluating entry
|
||||||
|
2026-08-03 23:40:14,284 skip KXDOGE15M-26AUG040245-45: BTC +0.8% 24h — no counter-trend shorts (conf 0.65<0.78)
|
||||||
|
2026-08-03 23:40:23,552 skip KXZEC15M-26AUG040245-45: BTC +1.6% 24h — no counter-trend shorts (conf 0.65<0.78)
|
||||||
|
2026-08-03 23:40:40,038 ⚡ micro-swing 0.03%+ in 60s on KXXRP15M-26AUG040245-45 — evaluating entry
|
||||||
|
2026-08-03 23:40:46,573 [fast-gate DOWN 0.85] skipping ornith — qwen confident
|
||||||
|
2026-08-03 23:40:48,203 POST NO x1 KXXRP15M-26AUG040245-45 @ 50¢ — DOWN: DOWN spike 0.21% conf=0.85 [[fast-gate DOWN 0.85] Extreme fear + oversold RSI spike fade]
|
||||||
|
2026-08-03 23:41:03,556 ⚖ BTC WR=32% → stake $1.00→$0.75 (bets:56)
|
||||||
|
2026-08-03 23:41:13,383 ⚡ micro-swing 0.03%+ in 60s on KXSOL15M-26AUG040245-45 — evaluating entry
|
||||||
|
2026-08-03 23:41:23,070 skip KXSOL15M-26AUG040245-45: BTC +1.2% 24h — no counter-trend shorts (conf 0.65<0.78)
|
||||||
|
2026-08-03 23:41:29,400 ⚡ micro-swing 0.03%+ in 60s on KXETH15M-26AUG040245-45 — evaluating entry
|
||||||
|
2026-08-03 23:41:39,084 skip KXETH15M-26AUG040245-45: passes: [split qwen=SKIP(0.50) ornith=SKIP(0.50)] Extreme Fear + oversold RSI = choppy, no clear edg
|
||||||
|
2026-08-03 23:43:01,218 ⚡ micro-swing 0.03%+ in 60s on KXSOL15M-26AUG040245-45 — evaluating entry
|
||||||
|
2026-08-03 23:43:10,949 daily loss cap hit — sitting out
|
||||||
|
2026-08-03 23:43:12,015 ⚖ NEAR WR=14% → stake $1.00→$0.75 (bets:14)
|
||||||
|
2026-08-03 23:43:12,469 ⚡ micro-swing 0.03%+ in 60s on KXSOL15M-26AUG040245-45 — evaluating entry
|
||||||
|
2026-08-03 23:43:22,401 daily loss cap hit — sitting out
|
||||||
|
2026-08-03 23:43:23,834 ⚡ micro-swing 0.03%+ in 60s on KXSOL15M-26AUG040245-45 — evaluating entry
|
||||||
|
2026-08-03 23:43:32,547 CANCEL stale KXXRP15M-26AUG040245-45 no@50¢ (mins_left=1.5)
|
||||||
|
2026-08-03 23:43:33,538 daily loss cap hit — sitting out
|
||||||
|
2026-08-03 23:43:34,905 ⚡ micro-swing 0.03%+ in 60s on KXSOL15M-26AUG040245-45 — evaluating entry
|
||||||
|
2026-08-03 23:43:44,777 daily loss cap hit — sitting out
|
||||||
|
2026-08-03 23:44:10,685 ⚡ micro-swing 0.03%+ in 60s on KXSOL15M-26AUG040245-45 — evaluating entry
|
||||||
|
2026-08-03 23:44:20,597 skip KXSOL15M-26AUG040245-45: BTC +1.2% 24h — no counter-trend shorts (conf 0.72<0.78)
|
||||||
|
2026-08-03 23:44:22,412 ⚡ micro-swing 0.03%+ in 60s on KXETH15M-26AUG040245-45 — evaluating entry
|
||||||
|
2026-08-03 23:44:27,916 ⚖ ZEC WR=22% → stake $1.00→$0.75 (bets:18)
|
||||||
|
2026-08-03 23:44:44,622 skip KXETH15M-26AUG040245-45: conf 0.65<0.80 (adaptive)
|
||||||
|
2026-08-03 23:45:00,611 127.0.0.1 - - [03/Aug/2026 23:45:00] "GET /api/fleet HTTP/1.1" 200 -
|
||||||
|
2026-08-03 23:45:10,020 127.0.0.1 - - [03/Aug/2026 23:45:10] "GET /api/state HTTP/1.1" 200 -
|
||||||
|
2026-08-03 23:45:10,051 127.0.0.1 - - [03/Aug/2026 23:45:10] "GET /api/fleet/ticks?coin=bnb&mins=60 HTTP/1.1" 200 -
|
||||||
|
2026-08-03 23:45:10,065 127.0.0.1 - - [03/Aug/2026 23:45:10] "GET /api/fleet/ticks?coin=btc&mins=60 HTTP/1.1" 200 -
|
||||||
|
2026-08-03 23:45:10,076 127.0.0.1 - - [03/Aug/2026 23:45:10] "GET /api/fleet/ticks?coin=doge&mins=60 HTTP/1.1" 200 -
|
||||||
|
2026-08-03 23:45:10,089 127.0.0.1 - - [03/Aug/2026 23:45:10] "GET /api/fleet/ticks?coin=eth&mins=60 HTTP/1.1" 200 -
|
||||||
|
2026-08-03 23:45:10,177 127.0.0.1 - - [03/Aug/2026 23:45:10] "GET /api/fleet/ticks?coin=near&mins=60 HTTP/1.1" 200 -
|
||||||
|
2026-08-03 23:45:10,189 127.0.0.1 - - [03/Aug/2026 23:45:10] "GET /api/fleet/ticks?coin=sol&mins=60 HTTP/1.1" 200 -
|
||||||
|
2026-08-03 23:45:10,202 127.0.0.1 - - [03/Aug/2026 23:45:10] "GET /api/fleet/ticks?coin=xrp&mins=60 HTTP/1.1" 200 -
|
||||||
|
2026-08-03 23:45:10,214 127.0.0.1 - - [03/Aug/2026 23:45:10] "GET /api/fleet/ticks?coin=zec&mins=60 HTTP/1.1" 200 -
|
||||||
|
2026-08-03 23:45:10,513 127.0.0.1 - - [03/Aug/2026 23:45:10] "GET /api/state HTTP/1.1" 200 -
|
||||||
|
2026-08-03 23:45:12,599 127.0.0.1 - - [03/Aug/2026 23:45:12] "GET /api/state HTTP/1.1" 200 -
|
||||||
|
2026-08-03 23:45:15,294 127.0.0.1 - - [03/Aug/2026 23:45:15] "GET /api/state HTTP/1.1" 200 -
|
||||||
|
2026-08-03 23:45:15,547 127.0.0.1 - - [03/Aug/2026 23:45:15] "GET /api/fleet HTTP/1.1" 200 -
|
||||||
|
2026-08-03 23:45:16,106 127.0.0.1 - - [03/Aug/2026 23:45:16] "GET /api/state HTTP/1.1" 200 -
|
||||||
|
2026-08-03 23:47:07,114 ⚡ micro-swing 0.03%+ in 60s on KXDOGE15M-26AUG040300-00 — evaluating entry
|
||||||
|
2026-08-03 23:47:18,012 skip KXDOGE15M-26AUG040300-00: BTC +0.9% 24h — no counter-trend shorts (conf 0.65<0.78)
|
||||||
|
2026-08-03 23:48:07,743 ⚡ micro-swing 0.03%+ in 60s on KXBNB15M-26AUG040300-00 — evaluating entry
|
||||||
|
2026-08-03 23:48:08,221 ⚡ micro-swing 0.03%+ in 60s on KXNEAR15M-26AUG040300-00 — evaluating entry
|
||||||
|
2026-08-03 23:48:09,664 ⚡ micro-swing 0.03%+ in 60s on KXBTC15M-26AUG040300-00 — evaluating entry
|
||||||
|
2026-08-03 23:48:10,429 ⚡ micro-swing 0.03%+ in 60s on KXSOL15M-26AUG040300-00 — evaluating entry
|
||||||
|
2026-08-03 23:48:17,519 ⚡ micro-swing 0.03%+ in 60s on KXZEC15M-26AUG040300-00 — evaluating entry
|
||||||
|
2026-08-03 23:48:17,639 [fast-gate DOWN 0.75] skipping ornith — qwen confident
|
||||||
|
2026-08-03 23:48:17,641 skip KXBNB15M-26AUG040300-00: BTC +1.7% 24h — no counter-trend shorts (conf 0.75<0.78)
|
||||||
|
2026-08-03 23:48:20,836 skip KXNEAR15M-26AUG040300-00: BTC +1.7% 24h — no counter-trend shorts (conf 0.65<0.78)
|
||||||
|
2026-08-03 23:48:22,831 skip KXSOL15M-26AUG040300-00: BTC +1.2% 24h — no counter-trend shorts (conf 0.65<0.78)
|
||||||
|
2026-08-03 23:48:25,666 ⚡ micro-swing 0.03%+ in 60s on KXETH15M-26AUG040300-00 — evaluating entry
|
||||||
|
2026-08-03 23:48:27,589 [fast-gate DOWN 0.75] skipping ornith — qwen confident
|
||||||
|
2026-08-03 23:48:27,594 skip KXBTC15M-26AUG040300-00: BTC +1.7% 24h — no counter-trend shorts (conf 0.75<0.78)
|
||||||
|
2026-08-03 23:48:35,565 skip KXETH15M-26AUG040300-00: conf 0.65<0.80 (adaptive)
|
||||||
|
2026-08-03 23:48:37,949 skip KXZEC15M-26AUG040300-00: passes: [split qwen=SKIP(0.50) ornith=SKIP(0.50)] Extreme fear + RSI=0, no clear edge
|
||||||
|
2026-08-03 23:50:10,192 ⚡ micro-swing 0.03%+ in 60s on KXETH15M-26AUG040300-00 — evaluating entry
|
||||||
|
2026-08-03 23:50:17,400 ⚡ micro-swing 0.03%+ in 60s on KXDOGE15M-26AUG040300-00 — evaluating entry
|
||||||
|
2026-08-03 23:50:27,056 skip KXDOGE15M-26AUG040300-00: passes: [split qwen=SKIP(0.50) ornith=SKIP(0.50)] No clear edge; RSI oversold, thin signal
|
||||||
|
2026-08-03 23:50:31,136 skip KXETH15M-26AUG040300-00: conf 0.65<0.80 (adaptive)
|
||||||
|
2026-08-03 23:50:53,913 skip KXXRP15M-26AUG040300-00: conf 0.65<0.80 (adaptive)
|
||||||
|
2026-08-03 23:50:54,226 127.0.0.1 - - [03/Aug/2026 23:50:54] "GET /fleet HTTP/1.1" 200 -
|
||||||
|
2026-08-03 23:50:54,721 127.0.0.1 - - [03/Aug/2026 23:50:54] "GET /api/fleet HTTP/1.1" 200 -
|
||||||
|
2026-08-03 23:51:03,876 127.0.0.1 - - [03/Aug/2026 23:51:03] "GET /api/state HTTP/1.1" 200 -
|
||||||
|
2026-08-03 23:51:04,808 ⚖ BTC WR=32% → stake $1.00→$0.75 (bets:56)
|
||||||
|
2026-08-03 23:53:12,158 ⚖ NEAR WR=14% → stake $1.00→$0.75 (bets:14)
|
||||||
|
2026-08-03 23:54:28,272 ⚖ ZEC WR=22% → stake $1.00→$0.75 (bets:18)
|
||||||
|
2026-08-03 23:55:22,731 127.0.0.1 - - [03/Aug/2026 23:55:22] "GET /api/state HTTP/1.1" 200 -
|
||||||
|
2026-08-03 23:55:24,717 127.0.0.1 - - [03/Aug/2026 23:55:24] "GET /api/fleet/ticks?coin=bnb&mins=60 HTTP/1.1" 200 -
|
||||||
|
2026-08-03 23:55:24,724 127.0.0.1 - - [03/Aug/2026 23:55:24] "GET /api/fleet/ticks?coin=btc&mins=60 HTTP/1.1" 200 -
|
||||||
|
2026-08-03 23:55:24,731 127.0.0.1 - - [03/Aug/2026 23:55:24] "GET /api/fleet/ticks?coin=doge&mins=60 HTTP/1.1" 200 -
|
||||||
|
2026-08-03 23:55:24,737 127.0.0.1 - - [03/Aug/2026 23:55:24] "GET /api/fleet/ticks?coin=eth&mins=60 HTTP/1.1" 200 -
|
||||||
|
2026-08-03 23:55:24,744 127.0.0.1 - - [03/Aug/2026 23:55:24] "GET /api/fleet/ticks?coin=near&mins=60 HTTP/1.1" 200 -
|
||||||
|
2026-08-03 23:55:24,751 127.0.0.1 - - [03/Aug/2026 23:55:24] "GET /api/fleet HTTP/1.1" 200 -
|
||||||
|
2026-08-03 23:55:24,753 127.0.0.1 - - [03/Aug/2026 23:55:24] "GET /api/fleet/ticks?coin=sol&mins=60 HTTP/1.1" 200 -
|
||||||
|
2026-08-03 23:55:24,757 127.0.0.1 - - [03/Aug/2026 23:55:24] "GET /api/fleet/ticks?coin=xrp&mins=60 HTTP/1.1" 200 -
|
||||||
|
2026-08-03 23:55:24,761 127.0.0.1 - - [03/Aug/2026 23:55:24] "GET /api/fleet/ticks?coin=zec&mins=60 HTTP/1.1" 200 -
|
||||||
|
2026-08-03 23:55:25,119 127.0.0.1 - - [03/Aug/2026 23:55:25] "GET /api/state HTTP/1.1" 200 -
|
||||||
|
2026-08-03 23:55:25,129 127.0.0.1 - - [03/Aug/2026 23:55:25] "GET /api/fleet/ticks?coin=bnb&mins=60 HTTP/1.1" 200 -
|
||||||
|
2026-08-03 23:55:25,137 127.0.0.1 - - [03/Aug/2026 23:55:25] "GET /api/fleet/ticks?coin=btc&mins=60 HTTP/1.1" 200 -
|
||||||
|
2026-08-03 23:55:25,143 127.0.0.1 - - [03/Aug/2026 23:55:25] "GET /api/fleet/ticks?coin=doge&mins=60 HTTP/1.1" 200 -
|
||||||
|
2026-08-03 23:55:25,148 127.0.0.1 - - [03/Aug/2026 23:55:25] "GET /api/fleet/ticks?coin=eth&mins=60 HTTP/1.1" 200 -
|
||||||
|
2026-08-03 23:55:25,154 127.0.0.1 - - [03/Aug/2026 23:55:25] "GET /api/fleet/ticks?coin=near&mins=60 HTTP/1.1" 200 -
|
||||||
|
2026-08-03 23:55:25,160 127.0.0.1 - - [03/Aug/2026 23:55:25] "GET /api/fleet/ticks?coin=sol&mins=60 HTTP/1.1" 200 -
|
||||||
|
2026-08-03 23:55:25,168 127.0.0.1 - - [03/Aug/2026 23:55:25] "GET /api/fleet/ticks?coin=xrp&mins=60 HTTP/1.1" 200 -
|
||||||
|
2026-08-03 23:55:25,174 127.0.0.1 - - [03/Aug/2026 23:55:25] "GET /api/fleet/ticks?coin=zec&mins=60 HTTP/1.1" 200 -
|
||||||
|
2026-08-03 23:55:27,613 127.0.0.1 - - [03/Aug/2026 23:55:27] "GET /api/state HTTP/1.1" 200 -
|
||||||
|
2026-08-03 23:55:33,981 127.0.0.1 - - [03/Aug/2026 23:55:33] "GET /api/state HTTP/1.1" 200 -
|
||||||
|
2026-08-03 23:55:39,812 127.0.0.1 - - [03/Aug/2026 23:55:39] "GET /api/fleet HTTP/1.1" 200 -
|
||||||
|
2026-08-03 23:55:40,272 127.0.0.1 - - [03/Aug/2026 23:55:40] "GET /api/state HTTP/1.1" 200 -
|
||||||
|
2026-08-03 23:55:40,283 127.0.0.1 - - [03/Aug/2026 23:55:40] "GET /api/fleet/ticks?coin=bnb&mins=60 HTTP/1.1" 200 -
|
||||||
|
2026-08-03 23:55:41,104 127.0.0.1 - - [03/Aug/2026 23:55:41] "GET /api/fleet/ticks?coin=btc&mins=60 HTTP/1.1" 200 -
|
||||||
|
2026-08-03 23:55:41,244 127.0.0.1 - - [03/Aug/2026 23:55:41] "GET /api/fleet/ticks?coin=doge&mins=60 HTTP/1.1" 200 -
|
||||||
|
2026-08-03 23:55:41,364 127.0.0.1 - - [03/Aug/2026 23:55:41] "GET /api/fleet/ticks?coin=eth&mins=60 HTTP/1.1" 200 -
|
||||||
|
2026-08-03 23:55:41,373 127.0.0.1 - - [03/Aug/2026 23:55:41] "GET /api/fleet/ticks?coin=near&mins=60 HTTP/1.1" 200 -
|
||||||
|
2026-08-03 23:55:41,382 127.0.0.1 - - [03/Aug/2026 23:55:41] "GET /api/fleet/ticks?coin=sol&mins=60 HTTP/1.1" 200 -
|
||||||
|
2026-08-03 23:55:41,388 127.0.0.1 - - [03/Aug/2026 23:55:41] "GET /api/fleet/ticks?coin=xrp&mins=60 HTTP/1.1" 200 -
|
||||||
|
2026-08-03 23:55:41,395 127.0.0.1 - - [03/Aug/2026 23:55:41] "GET /api/fleet/ticks?coin=zec&mins=60 HTTP/1.1" 200 -
|
||||||
|
2026-08-03 23:55:51,582 ⚡ micro-swing 0.03%+ in 60s on KXSOL15M-26AUG040300-00 — evaluating entry
|
||||||
|
2026-08-03 23:56:02,614 skip KXSOL15M-26AUG040300-00: BTC +1.1% 24h — no counter-trend shorts (conf 0.65<0.78)
|
||||||
|
2026-08-03 23:58:20,668 daily loss cap hit — sitting out
|
||||||
|
2026-08-03 23:58:23,473 POST NO x1 KXBNB15M-26AUG040300-00 @ 50¢ — ⚠ RSI 100 extreme OB + momentum reversing → fade DOWN
|
||||||
|
2026-08-03 23:58:30,585 [fast-gate DOWN 0.85] skipping ornith — qwen confident
|
||||||
|
2026-08-03 23:58:30,596 daily loss cap hit — sitting out
|
||||||
|
2026-08-03 23:58:40,989 skip KXZEC15M-26AUG040300-00: BTC +1.6% 24h — no counter-trend shorts (conf 0.65<0.78)
|
||||||
|
2026-08-03 23:59:19,861 ⚡ micro-swing 0.03%+ in 60s on KXDOGE15M-26AUG040300-00 — evaluating entry
|
||||||
|
2026-08-03 23:59:25,234 CANCEL stale KXBNB15M-26AUG040300-00 no@50¢ (mins_left=0.6)
|
||||||
|
2026-08-03 23:59:32,458 skip KXDOGE15M-26AUG040300-00: BTC +1.1% 24h — no counter-trend shorts (conf 0.75<0.78)
|
||||||
|
2026-08-04 00:00:27,963 127.0.0.1 - - [04/Aug/2026 00:00:27] "GET /api/fleet HTTP/1.1" 200 -
|
||||||
|
2026-08-04 00:00:53,810 skip KXXRP15M-26AUG040315-15: passes: [split qwen=SKIP(0.50) ornith=SKIP(0.50)] Choppy regime, no clear edge
|
||||||
|
2026-08-04 00:00:55,356 skip KXETH15M-26AUG040315-15: conf 0.75<0.80 (adaptive)
|
||||||
|
2026-08-04 00:01:34,360 ⚖ BTC WR=32% → stake $1.00→$0.75 (bets:56)
|
||||||
|
2026-08-04 00:03:13,548 ⚖ NEAR WR=14% → stake $1.00→$0.75 (bets:14)
|
||||||
|
2026-08-04 00:03:50,262 ⚡ micro-swing 0.03%+ in 60s on KXETH15M-26AUG040315-15 — evaluating entry
|
||||||
|
2026-08-04 00:04:00,353 skip KXETH15M-26AUG040315-15: conf 0.75<0.80 (adaptive)
|
||||||
|
2026-08-04 00:04:30,144 ⚖ ZEC WR=22% → stake $1.00→$0.75 (bets:18)
|
||||||
|
2026-08-04 00:06:06,577 POST YES x1 KXSOL15M-26AUG040315-15 @ 50¢ — ⚠ RSI 0 extreme OS + momentum reversing → fade UP
|
||||||
|
2026-08-04 00:06:13,051 ⚡ micro-swing 0.03%+ in 60s on KXDOGE15M-26AUG040315-15 — evaluating entry
|
||||||
|
2026-08-04 00:06:19,006 loop error: HTTPSConnectionPool(host='api.elections.kalshi.com', port=443): Read timed out. (read timeout=15)
|
||||||
|
2026-08-04 00:06:26,074 skip KXDOGE15M-26AUG040315-15: BTC +1.4% 24h — no counter-trend shorts (conf 0.65<0.78)
|
||||||
|
2026-08-04 00:07:34,635 ⚡ micro-swing 0.03%+ in 60s on KXDOGE15M-26AUG040315-15 — evaluating entry
|
||||||
|
2026-08-04 00:07:44,349 skip KXDOGE15M-26AUG040315-15: BTC +1.4% 24h — no counter-trend shorts (conf 0.65<0.78)
|
||||||
|
2026-08-04 00:08:23,053 skip KXNEAR15M-26AUG040315-15: passes: [split qwen=SKIP(0.50) ornith=SKIP(0.50)] Extreme Fear + choppy regime, no clear edge
|
||||||
|
2026-08-04 00:08:23,619 skip KXBNB15M-26AUG040315-15: BTC +1.6% 24h — no counter-trend shorts (conf 0.65<0.78)
|
||||||
|
2026-08-04 00:08:33,518 skip KXBTC15M-26AUG040315-15: BTC +1.6% 24h — no counter-trend shorts (conf 0.65<0.78)
|
||||||
|
2026-08-04 00:08:42,688 skip KXZEC15M-26AUG040315-15: passes: [split qwen=SKIP(0.50) ornith=SKIP(0.50)] Extreme fear + choppy regime, no clear edge
|
||||||
|
|||||||
2
btc.json
2
btc.json
@@ -21,7 +21,7 @@
|
|||||||
"decision_interval_sec": 600,
|
"decision_interval_sec": 600,
|
||||||
"start_delay_sec": 300,
|
"start_delay_sec": 300,
|
||||||
"fast_llm_url": "http://localhost:11434",
|
"fast_llm_url": "http://localhost:11434",
|
||||||
"fast_llm_model": "qwen3.5:4b",
|
"fast_llm_model": "qwen3.5:4b-mlx",
|
||||||
"deep_llm_url": "http://10.30.20.186:11434",
|
"deep_llm_url": "http://10.30.20.186:11434",
|
||||||
"deep_llm_model": "ornith:latest",
|
"deep_llm_model": "ornith:latest",
|
||||||
"color": "#f7931a",
|
"color": "#f7931a",
|
||||||
|
|||||||
@@ -22,7 +22,7 @@
|
|||||||
"decision_interval_sec": 600,
|
"decision_interval_sec": 600,
|
||||||
"start_delay_sec": 0,
|
"start_delay_sec": 0,
|
||||||
"fast_llm_url": "http://localhost:11434",
|
"fast_llm_url": "http://localhost:11434",
|
||||||
"fast_llm_model": "qwen3.5:4b",
|
"fast_llm_model": "qwen3.5:4b-mlx",
|
||||||
"deep_llm_url": "http://10.30.20.186:11434",
|
"deep_llm_url": "http://10.30.20.186:11434",
|
||||||
"deep_llm_model": "ornith:latest",
|
"deep_llm_model": "ornith:latest",
|
||||||
"diverify_url": "http://10.30.20.89:11434",
|
"diverify_url": "http://10.30.20.89:11434",
|
||||||
|
|||||||
2
eth.json
2
eth.json
@@ -22,7 +22,7 @@
|
|||||||
"decision_interval_sec": 600,
|
"decision_interval_sec": 600,
|
||||||
"start_delay_sec": 150,
|
"start_delay_sec": 150,
|
||||||
"fast_llm_url": "http://localhost:11434",
|
"fast_llm_url": "http://localhost:11434",
|
||||||
"fast_llm_model": "qwen3.5:4b",
|
"fast_llm_model": "qwen3.5:4b-mlx",
|
||||||
"deep_llm_url": "http://10.30.20.186:11434",
|
"deep_llm_url": "http://10.30.20.186:11434",
|
||||||
"deep_llm_model": "ornith:latest",
|
"deep_llm_model": "ornith:latest",
|
||||||
"diverify_url": "http://10.30.20.89:11434",
|
"diverify_url": "http://10.30.20.89:11434",
|
||||||
|
|||||||
13
launch_speed.sh
Executable file
13
launch_speed.sh
Executable file
@@ -0,0 +1,13 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
# Launch speed bot for a coin
|
||||||
|
COIN="${1:-DOGE}"
|
||||||
|
DRY="${2:-dry}"
|
||||||
|
|
||||||
|
FLAGS="--coin $COIN"
|
||||||
|
if [ "$DRY" = "live" ]; then
|
||||||
|
FLAGS="$FLAGS --live"
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "🚀 Speed Bot: $COIN ($DRY mode)"
|
||||||
|
cd ~/kalshi-bot
|
||||||
|
exec python3 speed_bot.py $FLAGS
|
||||||
@@ -21,7 +21,7 @@
|
|||||||
"decision_interval_sec": 600,
|
"decision_interval_sec": 600,
|
||||||
"start_delay_sec": 450,
|
"start_delay_sec": 450,
|
||||||
"fast_llm_url": "http://localhost:11434",
|
"fast_llm_url": "http://localhost:11434",
|
||||||
"fast_llm_model": "qwen3.5:4b",
|
"fast_llm_model": "qwen3.5:4b-mlx",
|
||||||
"deep_llm_url": "http://10.30.20.186:11434",
|
"deep_llm_url": "http://10.30.20.186:11434",
|
||||||
"deep_llm_model": "ornith:latest",
|
"deep_llm_model": "ornith:latest",
|
||||||
"color": "#00EC97",
|
"color": "#00EC97",
|
||||||
|
|||||||
2
sol.json
2
sol.json
@@ -22,7 +22,7 @@
|
|||||||
"decision_interval_sec": 600,
|
"decision_interval_sec": 600,
|
||||||
"start_delay_sec": 75,
|
"start_delay_sec": 75,
|
||||||
"fast_llm_url": "http://localhost:11434",
|
"fast_llm_url": "http://localhost:11434",
|
||||||
"fast_llm_model": "qwen3.5:4b",
|
"fast_llm_model": "qwen3.5:4b-mlx",
|
||||||
"deep_llm_url": "http://10.30.20.186:11434",
|
"deep_llm_url": "http://10.30.20.186:11434",
|
||||||
"deep_llm_model": "ornith:latest",
|
"deep_llm_model": "ornith:latest",
|
||||||
"diverify_url": "http://10.30.20.89:11434",
|
"diverify_url": "http://10.30.20.89:11434",
|
||||||
|
|||||||
62
speed_bot.py
62
speed_bot.py
@@ -18,7 +18,7 @@ MODEL = "qwen3.5:4b-mlx"
|
|||||||
|
|
||||||
# ── Auth (RSA-PSS-SHA256, same as existing bot) ──
|
# ── Auth (RSA-PSS-SHA256, same as existing bot) ──
|
||||||
KEY_PATH = os.path.expanduser("~/kalshi-bot/kalshi_private_key.pem")
|
KEY_PATH = os.path.expanduser("~/kalshi-bot/kalshi_private_key.pem")
|
||||||
KEY_ID = "28d5876b"
|
KEY_ID = "28d5876b-2ece-4aa3-aa17-ec96e1e706eb"
|
||||||
|
|
||||||
with open(KEY_PATH, "rb") as f:
|
with open(KEY_PATH, "rb") as f:
|
||||||
PK = serialization.load_pem_private_key(f.read(), password=None)
|
PK = serialization.load_pem_private_key(f.read(), password=None)
|
||||||
@@ -62,6 +62,7 @@ Vote UP DOWN or SKIP. Respond ONLY with JSON: {{"vote":"UP|DOWN|SKIP","conf":0.0
|
|||||||
try:
|
try:
|
||||||
r = requests.post(f"{OLLAMA_URL}/api/generate",
|
r = requests.post(f"{OLLAMA_URL}/api/generate",
|
||||||
json={"model": MODEL, "prompt": prompt, "stream": False,
|
json={"model": MODEL, "prompt": prompt, "stream": False,
|
||||||
|
"think": False,
|
||||||
"options": {"temperature": 0.15, "num_predict": 40}},
|
"options": {"temperature": 0.15, "num_predict": 40}},
|
||||||
timeout=8, proxies={"http": None, "https": None})
|
timeout=8, proxies={"http": None, "https": None})
|
||||||
txt = r.json().get("response", "")
|
txt = r.json().get("response", "")
|
||||||
@@ -231,33 +232,52 @@ class SpeedBot:
|
|||||||
|
|
||||||
def run(self):
|
def run(self):
|
||||||
self.running = True
|
self.running = True
|
||||||
print(f"[speed-{self.coin}] Starting speed bot (dry_run={self.dry_run}, model={MODEL})")
|
last_tick_ts = 0
|
||||||
|
print(f"[speed-{self.coin}] Starting (dry_run={self.dry_run}, model={MODEL}, REST mode)")
|
||||||
|
|
||||||
|
# Warm the MLX model
|
||||||
|
try:
|
||||||
|
requests.post(f"{OLLAMA_URL}/api/generate",
|
||||||
|
json={"model": MODEL, "prompt": "hi", "stream": False,
|
||||||
|
"think": False, "keep_alive": "30m",
|
||||||
|
"options": {"num_predict": 5}},
|
||||||
|
timeout=30, proxies={"http": None, "https": None})
|
||||||
|
print(f"[speed-{self.coin}] MLX model warm")
|
||||||
|
except Exception:
|
||||||
|
pass
|
||||||
|
|
||||||
while self.running:
|
while self.running:
|
||||||
try:
|
try:
|
||||||
self.ws = websocket.WebSocketApp(
|
# REST polling (WebSocket auth WIP)
|
||||||
KALSHI_WS,
|
markets = get_open_markets()
|
||||||
header=self._ws_headers(),
|
our_markets = [m for m in markets if self.coin in m.get("ticker", "")]
|
||||||
on_open=self.on_open,
|
|
||||||
on_message=self.on_message,
|
for mkt in our_markets[:1]: # Trade the first open market
|
||||||
on_error=self.on_error,
|
ticker = mkt["ticker"]
|
||||||
on_close=self.on_close,
|
mkt_data = get_ticker(ticker)
|
||||||
)
|
mkt_data = mkt_data.get("market", mkt_data)
|
||||||
self.ws.run_forever(ping_interval=30, ping_timeout=10)
|
price = float(mkt_data.get("last_price", 0) or mkt_data.get("yes_bid", 0) or 0)
|
||||||
|
|
||||||
|
if price > 0:
|
||||||
|
self.prices.append(price)
|
||||||
|
self.db.execute("INSERT INTO ticks VALUES (?,?,?)",
|
||||||
|
(time.time(), price, mkt_data.get("volume", 0) or 0))
|
||||||
|
self.db.commit()
|
||||||
|
|
||||||
|
# Decision check
|
||||||
|
now = time.time()
|
||||||
|
if now - self.last_decision >= self.decision_cooldown and len(self.prices) >= 20:
|
||||||
|
self.last_decision = now
|
||||||
|
self._decide(ticker, price)
|
||||||
|
|
||||||
|
time.sleep(5) # Poll every 5 seconds
|
||||||
|
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
print(f"[speed-{self.coin}] Reconnecting in 5s: {e}")
|
print(f"[speed-{self.coin}] Loop error: {e}")
|
||||||
time.sleep(5)
|
time.sleep(5)
|
||||||
|
|
||||||
def _ws_headers(self):
|
def _ws_headers(self):
|
||||||
ts = str(int(time.time() * 1000))
|
return sign("GET", "/trade-api/ws/v2")
|
||||||
path = "/trade-api/ws/v2"
|
|
||||||
msg = f"{ts}GET{path}".encode()
|
|
||||||
sig = base64.b64encode(hmac.HMAC(KEY, msg, hashlib.sha256).digest()).decode()
|
|
||||||
return {
|
|
||||||
"KALSHI-ACCESS-KEY": KEY_ID,
|
|
||||||
"KALSHI-ACCESS-SIGNATURE": sig,
|
|
||||||
"KALSHI-ACCESS-TIMESTAMP": ts,
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
if __name__ == "__main__":
|
if __name__ == "__main__":
|
||||||
|
|||||||
2
xrp.json
2
xrp.json
@@ -22,7 +22,7 @@
|
|||||||
"decision_interval_sec": 600,
|
"decision_interval_sec": 600,
|
||||||
"start_delay_sec": 225,
|
"start_delay_sec": 225,
|
||||||
"fast_llm_url": "http://localhost:11434",
|
"fast_llm_url": "http://localhost:11434",
|
||||||
"fast_llm_model": "qwen3.5:4b",
|
"fast_llm_model": "qwen3.5:4b-mlx",
|
||||||
"deep_llm_url": "http://10.30.20.186:11434",
|
"deep_llm_url": "http://10.30.20.186:11434",
|
||||||
"deep_llm_model": "ornith:latest",
|
"deep_llm_model": "ornith:latest",
|
||||||
"color": "#00AAE4",
|
"color": "#00AAE4",
|
||||||
|
|||||||
2
zec.json
2
zec.json
@@ -21,7 +21,7 @@
|
|||||||
"decision_interval_sec": 600,
|
"decision_interval_sec": 600,
|
||||||
"start_delay_sec": 525,
|
"start_delay_sec": 525,
|
||||||
"fast_llm_url": "http://localhost:11434",
|
"fast_llm_url": "http://localhost:11434",
|
||||||
"fast_llm_model": "qwen3.5:4b",
|
"fast_llm_model": "qwen3.5:4b-mlx",
|
||||||
"deep_llm_url": "http://10.30.20.186:11434",
|
"deep_llm_url": "http://10.30.20.186:11434",
|
||||||
"deep_llm_model": "ornith:latest",
|
"deep_llm_model": "ornith:latest",
|
||||||
"color": "#F4B728",
|
"color": "#F4B728",
|
||||||
|
|||||||
Reference in New Issue
Block a user