Compare commits

...

6 Commits

2 changed files with 27 additions and 7 deletions

View File

@@ -1,13 +1,19 @@
from fastapi import APIRouter
from ..core.config import get_settings
from ..services.ave import AveCloudClient
router = APIRouter()
@router.get("/chains")
def get_chains():
return {"chains": []}
return {"chains": ["bsc"]}
@router.get("/tokens")
def get_tokens():
return {"tokens": []}
async def get_tokens():
settings = get_settings()
client = AveCloudClient(api_key=settings.AVE_API_KEY, plan=settings.AVE_API_PLAN)
tokens = await client.get_tokens(chain="bsc", limit=20)
return {"tokens": tokens}

View File

@@ -1,5 +1,5 @@
from pydantic import BaseModel, EmailStr
from typing import Optional, List, Any
from pydantic import BaseModel, EmailStr, field_validator
from typing import Optional, List, Any, Dict
from datetime import datetime
@@ -35,8 +35,8 @@ class UserSettingsUpdate(BaseModel):
class BotCreate(BaseModel):
name: str
description: Optional[str] = None
strategy_config: dict
llm_config: dict
strategy_config: Optional[dict] = {}
llm_config: Optional[dict] = {}
class BotUpdate(BaseModel):
@@ -69,6 +69,13 @@ class BacktestCreate(BaseModel):
start_date: str
end_date: str
@field_validator("chain")
@classmethod
def chain_must_be_bsc(cls, v: str) -> str:
if v != "bsc":
raise ValueError("Phase 1 only supports BSC (bnb chain)")
return v
class BacktestResponse(BaseModel):
id: str
@@ -90,6 +97,13 @@ class SimulationCreate(BaseModel):
check_interval: int = 60
auto_execute: bool = False
@field_validator("chain")
@classmethod
def chain_must_be_bsc(cls, v: str) -> str:
if v != "bsc":
raise ValueError("Phase 1 only supports BSC (bnb chain)")
return v
class SimulationResponse(BaseModel):
id: str