From 1eeb2c1beed2602b7e862af6f98fc0515a7d55fd Mon Sep 17 00:00:00 2001 From: aaron <> Date: Thu, 5 Jun 2025 11:06:49 +0800 Subject: [PATCH] update --- .../__pycache__/crypto_agent.cpython-313.pyc | Bin 21088 -> 20204 bytes cryptoai/agents/crypto_agent.py | 5 +++-- .../__pycache__/binance_api.cpython-313.pyc | Bin 9887 -> 9943 bytes cryptoai/api/binance_api.py | 3 ++- docker-compose.yml | 2 +- test.py | 12 +++++++++++- 6 files changed, 17 insertions(+), 5 deletions(-) diff --git a/cryptoai/agents/__pycache__/crypto_agent.cpython-313.pyc b/cryptoai/agents/__pycache__/crypto_agent.cpython-313.pyc index e74f4b9af477c3438122cf6876e1ccc5e37d981c..8080a570fe0e232e5a1d3edcb25db349ef81ff8d 100644 GIT binary patch delta 2904 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 delta 3589 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 diff --git a/cryptoai/agents/crypto_agent.py b/cryptoai/agents/crypto_agent.py index e8d215f..d6ab967 100644 --- a/cryptoai/agents/crypto_agent.py +++ b/cryptoai/agents/crypto_agent.py @@ -109,9 +109,10 @@ class CryptoAgent: data = self.binance_api.get_historical_klines( symbol=symbol, interval=self.time_interval, - start_str=start_str + start_str=start_str, + limit=200 ) - + print(f"Binance获取数据: {data}") if data.empty: # 如果从Binance获取失败,尝试从OKX获取 print(f"从Binance获取数据失败,尝试从OKX获取{symbol}的K线数据...") diff --git a/cryptoai/api/__pycache__/binance_api.cpython-313.pyc b/cryptoai/api/__pycache__/binance_api.cpython-313.pyc index fdd8330f5fc561330542c3f9ff3496576f34b180..bcc4f5e508754170c2a8402367a88457f9d062cb 100644 GIT binary patch delta 695 zcmbR5d)=4!GcPX}0}yy}I%Ztl$Scaom^4|LamM8Lj8dC#Gjek?2{BEcBW^IcL6&2( z0PheW=be~Fqb+|1%^IuOnsI-DEfFo`hxj{89Zbd z81gtGDnL4dgn6v*RrNpW!e+mkS&7VM!$yM&`rTj6n7gMphTL&HF`Mm>8QkvxwU> zF;3m=BH6~oxNP%j=>!(Wott$O>=;>Jo&edHt@xNRY_h*nRegoxr>oOABI=e*yi;%-s>rm7xb z>-l76rLm`m5Lf63?nvsqCbG8m8WUdf1L>sq7!9bYl+4Y1m7G{t_b?7+cM1$Li-wRR zb*UoL1$D?T87{t;AsTK&$_b@@dfcyvdvwmqO(JK1Z5I5+7e-}6DLf{n*>ltF|^n!jz5!oB>gB^*|kNOD= z(qQl~dNyA`XriZ(6`J07AuTi~kn6Nq$XXaWNAQ7le(*HGC)QSYi{J}OjV`)y->MJi z5iioc*cV);Pvfdobi8`tyZGx})sXl!1 pd.DataFrame: + def get_historical_klines(self, symbol: str, interval: str, start_str: Optional[str] = None, end_str: Optional[str] = None, limit: int = 200) -> pd.DataFrame: """ 获取历史K线数据 @@ -106,6 +106,7 @@ class BinanceAPI: limit=limit, klines_type=HistoricalKlinesType.FUTURES ) + print(f"Binance获取数据: {klines}") # 转换为DataFrame df = pd.DataFrame(klines, columns=[ diff --git a/docker-compose.yml b/docker-compose.yml index bf877c8..13ba3e6 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -4,7 +4,7 @@ services: cryptoai-task: build: . container_name: cryptoai-task - image: cryptoai:0.0.17 + image: cryptoai:0.0.18 restart: always volumes: - ./cryptoai/data:/app/cryptoai/data diff --git a/test.py b/test.py index cdfada6..b23d29b 100644 --- a/test.py +++ b/test.py @@ -5,6 +5,16 @@ from time import sleep from cryptoai.models.token import TokenManager from cryptoai.utils.db_manager import get_db_context from cryptoai.tasks.user import task_run +from cryptoai.agents.crypto_agent import CryptoAgent if __name__ == "__main__": - task_run() + CryptoAgent().start_agent() + + # data = get_binance_api().get_historical_klines( + # symbol="BTCUSDT", + # interval="1h", + # start_str="2024-01-01", + # end_str="2024-01-02", + # limit=100 + # ) + # print(data)