ZhouYongyou
bb2edfc293
feat(market): Add WebSocket stream limit protection with auto-downgrade
...
## Problem
Binance WebSocket has a hard limit of 1024 streams per connection.
Without protection:
- 300 coins × 4 timeframes = 1200 streams → Connection REJECTED
- System fails to start with "全市場掃描" mode
## Solution
Implement intelligent auto-downgrade mechanism with transparent logging.
### Changes to market/monitor.go (+42 lines)
**1. Add Constants**:
```go
const (
MaxStreamsPerConnection = 1024 // Binance hard limit
SafeMaxSymbols = 250 // Safe limit (97.7% usage, 2.3% buffer)
)
```
**2. Add Stream Count Check in Initialize()**:
- Calculate total streams: `len(symbols) × len(subKlineTime)`
- If exceeds 250 coins → Auto-downgrade to first 250
- Display detailed adjustment logs
**3. Add Usage Rate Display**:
```
✓ WebSocket 訂閱: X 個幣種 × 4 時間週期 = Y 流 (Z% 用量)
```
**4. Add High Usage Warning (>90%)**:
```
⚠️ 警告: 訂閱流使用率較高 (93.8%),建議減少幣種數量以確保穩定性
```
## Behavior by Scenario
| Coins | Original Streams | Adjusted Streams | Behavior |
|-------|-----------------|------------------|----------|
| 8 | 32 | 32 | ✅ Normal |
| 100 | 400 | 400 | ✅ Normal |
| 150 | 600 | 600 | ✅ Normal |
| 240 | 960 | 960 | ⚠️ Warning |
| 300 | 1200 | **1000** | 🔄 Auto-downgrade |
| 500 | 2000 | **1000** | 🔄 Auto-downgrade |
## Example Logs
### Normal Case (8 coins):
```
找到 8 个交易对
✓ WebSocket 訂閱: 8 個幣種 × 4 時間週期 = 32 流 (3.1% 用量)
```
### Auto-downgrade Case (300 coins):
```
找到 300 个交易对
⚠️ 幣種數量過多,自動調整:
- 原始數量: 300 個幣種 (1200 流)
- Binance 限制: 1024 流/連接
- 時間週期: 4 ([3m 15m 1h 4h])
- 調整後: 250 個幣種 (1000 流)
- 已過濾: 前 250 個幣種保留,其餘忽略
✓ WebSocket 訂閱: 250 個幣種 × 4 時間週期 = 1000 流 (97.7% 用量)
⚠️ 警告: 訂閱流使用率較高 (97.7%),建議減少幣種數量以確保穩定性
```
## Benefits
- ✅ System always starts successfully (no crashes)
- ✅ Transparent logging (users know what happened)
- ✅ Safe buffer (2.3% headroom for reconnections)
- ✅ No breaking changes (8-250 coins unchanged)
- ✅ Covers all realistic use cases (AI500 + OI Top = ~150 coins)
## Why 250, not 256?
- 256 × 4 = 1024 (no buffer, risky during reconnections)
- 250 × 4 = 1000 (24 stream buffer = 2.3% safety margin)
- Future-proof for potential 5th timeframe
Related: 15m/1h timeframe addition, WebSocket architecture merge
2025-11-03 19:27:01 +08:00
ZhouYongyou
221b03b383
refactor(prompts): enhance partial_close guidance in adaptive & nof1
...
## Core Changes
### 1. adaptive.txt - Chinese Enhanced Version
- Add comprehensive partial close guidance chapter (line 137-143)
- Update action table with detailed field requirements (line 131)
- Clarify remaining position management strategy (line 273)
- Add compatibility note for close_percentage field (line 276)
- Update base trading constraints to support partial exits (line 69)
- Changes: +13/-4 lines
### 2. nof1.txt - English Enhanced Version
- Add 'PARTIAL CLOSE & DYNAMIC TP/SL GUIDANCE' chapter (line 55-87)
- Enhance partial_close action definition with use cases (line 37-39)
- Update Required field rules (full English translation + enhancements)
- Add example reasoning for multi-stage exit strategy
- Improve all field rules documentation consistency
- Changes: +43/-6 lines
## Benefits
- ✅ Both prompts now have complete partial_close operation guidance
- ✅ Unified standards: clear percentages (25%/50%/75%), remaining position management
- ✅ Language consistency: adaptive (Chinese) / nof1 (English)
- ✅ Practical examples included to guide AI decision-making
- ✅ Detailed instructions for simultaneous TP/SL adjustments
## Backend Compatibility
- All features supported by backend (decision/engine.go)
- No breaking changes
- partial_close, update_stop_loss, update_take_profit all validated
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com >
2025-11-03 19:23:04 +08:00
ZhouYongyou
8d12514498
feat(market): Add 15m/1h timeframes for comprehensive trend analysis
...
## Problem
Merged WebSocket architecture (nofxaios/dev) only supported 3m/4h intervals,
but adaptive.txt v5.5.6.1 requires 15m/1h data for:
- BTC state evaluation (line 105-107)
- Multi-confirmation checklist (line 146, 159)
- False breakout detection (line 176, 182)
- Confidence scoring (line 197)
## Solution
Add 15m and 1h timeframe support across WebSocket pipeline:
### 1. market/monitor.go (+64/-40 lines)
- Add klineDataMap15m and klineDataMap1h to WSMonitor struct
- Update subKlineTime: ["3m", "4h"] → ["3m", "15m", "1h", "4h"]
- Extend initializeHistoricalData() to load 15m/1h historical klines
- Update getKlineDataMap() switch to handle all 4 timeframes
- Fix bug: line 109 used wrong variable (klines vs klines4h)
### 2. market/types.go (+26/-1 lines)
- Add MidTermData15m struct (15-minute short-term trend filtering)
- Add MidTermData1h struct (1-hour mid-term trend confirmation)
- Update Data struct to include:
- MidTermSeries15m *MidTermData15m
- MidTermSeries1h *MidTermData1h
### 3. market/data.go (+171/-2 lines)
- Update Get() to fetch klines15m and klines1h via WebSocket
- Implement calculateMidTermSeries15m() - computes EMA20, MACD, RSI7/14 for 15m
- Implement calculateMidTermSeries1h() - computes EMA20, MACD, RSI7/14 for 1h
- Update Format() to output 15m/1h series data for AI prompt context
## Impact Assessment
### WebSocket Load (Binance limit: 1024 streams/connection)
- 8 coins × 4 timeframes = 32 streams (3% usage) ✅
- 100 coins × 4 timeframes = 400 streams (39% usage) ✅
- 250 coins × 4 timeframes = 1000 streams (98% usage) ⚠️
### Benefits
- Enables adaptive.txt standard mode: 15m/1h/4h multi-timeframe confirmation
- Restores false breakout detection: 15m RSI vs 1h RSI divergence checks
- Improves confidence scoring: 15m/1h/4h MACD alignment validation
- Zero REST API calls (WebSocket cache, no rate limit risk)
## Testing Notes
- Monitor initial subscription logs for "已加载 X 的历史K线数据-15m/1h"
- Verify AI prompts contain "Mid-term series (15-minute intervals)" section
- Check decision logs reference 15m/1h indicators in reasoning
Related: adaptive.txt v5.5.6.1 requirements, NoFxAiOS/dev WebSocket merge
2025-11-03 19:17:12 +08:00
ZhouYongyou
bead75ef8f
merge: Sync with NoFxAiOS/dev - adopt WebSocket architecture
...
Merged 54 commits from upstream (NoFxAiOS/dev @ 8832557 )
## Key Changes
### 🚀 WebSocket Real-time Data Architecture
- ✅ NEW: WebSocket client with auto-reconnect (websocket_client.go)
- ✅ NEW: Market data monitor with combined streams (monitor.go)
- ✅ NEW: K-line caching system (combined_streams.go)
- ✅ UPGRADE: market/data.go now uses WebSocket instead of REST API
- 🎯 Benefits: Lower latency, reduced API limits, auto-reconnect
### 📝 Documentation & CI/CD
- ✅ NEW: Comprehensive troubleshooting guides (EN + ZH-CN)
- ✅ UPGRADE: Enhanced PR workflow with checks
- ✅ NEW: PR title guide & template improvements
- ✅ UPDATE: FAQ expanded with common issues
### 🔧 Conflict Resolution
- market/data.go: Adopted upstream WebSocket version
- prompts/adaptive.txt: Kept our v5.5.6.1 (conf≥85, strict strategy)
### 📊 Stats
- Files changed: 40+
- New files: 12 (WebSocket modules, docs, CI)
- Commits merged: 54
Related: feature/partial-close-dynamic-tpsl
Upstream: NoFxAiOS/nofx @ 8832557
2025-11-03 18:40:54 +08:00
ZhouYongyou
b3b68b2b62
refactor(prompts): unify action schema & optimize trading discipline
...
## Core Changes
### 1. adaptive.txt - Adopt v5.5.6.1 strict strategy
- Migrate from dual-strategy system to unified adaptive approach
- Maintain strict confidence threshold ≥85 (anti-overtrading)
- Remove complex market state detection, focus on signal quality
- Explicitly disable partial_close (full exit only)
- -160 lines (removed redundant strategy logic)
### 2. nof1.txt - Fix contradictions & align standards
- ✅ Fix: Remove "NO partial exits" contradiction (now explicitly supported)
- ✅ Unify: Change confidence threshold from 60 → 75
- ✅ Unify: Change risk-reward ratio from 2:1 → 3:1
- Add confidence level guidance (75-85: good, 85-100: high)
- +85 lines (enhanced risk management framework)
### 3. default.txt - Add standardized output format
- Add structured thinking summary format
- Add comprehensive JSON schema documentation
- Add required fields rules for all action types
- +36 lines (improved contract clarity)
## Action Schema Migration
All prompts now use unified action naming:
- ✅ open_long / open_short (was: buy_to_enter / sell_to_enter)
- ✅ close_long / close_short (was: close)
- ✅ update_stop_loss / update_take_profit (new)
- ✅ partial_close (new, nof1 only)
- ✅ hold / wait (unchanged)
## Confidence Scale Migration
- ✅ Changed from 0-1 float to 0-100 integer across all prompts
- ✅ Opening threshold: adaptive=85, nof1=75, default=75
- ✅ Prevents overtrading through strict quality control
## Risk-Reward Standardization
- ✅ Minimum RR ratio: 1:3 across all prompts
- ✅ Replaces previous 1:2 requirement in nof1.txt
## Breaking Changes
- Backend must support new action names
- Confidence field now expects integer 0-100 (not float 0-1)
- partial_close action available in nof1.txt only
## Prompt Positioning
- **adaptive.txt**: Strict strategy (conf≥85, RR≥1:3, no partial exits)
- **nof1.txt**: English framework (conf≥75, RR≥1:3, supports partial_close)
- **default.txt**: Balanced CN strategy (conf≥75, RR≥1:3)
Related: feature/partial-close-dynamic-tpsl
2025-11-03 14:52:31 +08:00
Luna Martinez
88325572e6
Merge pull request #292 from hzb1115/dev
...
aaafix(workflow): fix github workflow
2025-11-02 22:59:34 -05:00
zbhan
e7e5c7b710
fix comment
2025-11-02 22:55:27 -05:00
zbhan
7a43f25858
Fix validation logic
2025-11-02 22:49:43 -05:00
zbhan
88240019ec
Fix validation
2025-11-02 22:24:31 -05:00
zbhan
75115ac747
Fix backend check
2025-11-02 22:15:45 -05:00
zbhan
0500cf7486
Fix validation error
2025-11-02 22:11:24 -05:00
zbhan
7cbef0fd65
fix(workflow): fix github workflow
2025-11-02 21:49:59 -05:00
Luna Martinez
9f2993b67f
Change permissions from read to write for contents
2025-11-02 21:15:31 -05:00
Luna Martinez
cbc153f855
Merge pull request #226 from xqliu/docs/enhance-bug-report-template
...
docs: Enhance bug report template and add troubleshooting guide
2025-11-02 21:08:32 -05:00
tinkle-community
2a61c8aba5
Merge pull request #285 from tangmengqiu/fix/ci-flow
2025-11-03 10:03:56 +08:00
tangmengqiu
9486a0df40
fix(ci): Add comprehensive permissions to pr-checks workflow
...
Add workflow-level default permissions and explicit per-job permissions
following the principle of least privilege:
Workflow-level (default):
- contents: read - Read repository contents
- pull-requests: write - Manage PR labels and comments
- issues: write - Manage issues (PRs are issues in GitHub API)
Job-level overrides:
- validate-pr: Inherits workflow defaults (needs issue/PR write access)
- backend-tests: Downgrade to read-only (no write operations needed)
- frontend-tests: Downgrade to read-only (no write operations needed)
- auto-label: Add missing issues:write (labeler operates on PR issues)
- security-check: Add security-events:write (upload SARIF results)
- secrets-check: Downgrade to read-only (scanning only)
- all-checks: Downgrade to read-only (status checking only)
This fixes:
1. Potential 403 errors when auto-label tries to add labels to PR issues
2. Missing permission for uploading security scan results
3. Overly permissive access for read-only jobs
Related: #282
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com >
2025-11-02 18:23:28 -05:00
tinkle-community
afa86b5d80
Merge pull request #266 from 0xEmberZz/quote-tweet-link
2025-11-03 07:01:41 +08:00
tinkle-community
ed4a7a2d20
Merge pull request #268 from yutou123/dev
2025-11-03 06:59:28 +08:00
tinkle-community
45f139a873
Merge pull request #282 from tangmengqiu/fix/dockerfile
2025-11-03 06:50:30 +08:00
tangmengqiu
a7d7ea17cc
fix typo
2025-11-02 17:26:47 -05:00
tangmengqiu
85d48f316b
fix(docker): Fix go-sqlite3 compilation on Alpine Linux
...
Add CGO_CFLAGS="-D_LARGEFILE64_SOURCE" to resolve musl libc compatibility
issues. This enables the Large File Support feature macros which map
pread64/pwrite64/off64_t symbols (used by SQLite) to musl's native
pread/pwrite/off_t implementations.
This fix eliminates the "undeclared identifier" errors during CGO
compilation without requiring additional sqlite-dev dependencies.
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com >
2025-11-02 17:15:01 -05:00
tinkle
8ad737e3a3
docs: Replace sensitive configuration examples with placeholders
...
Update documentation to use placeholder values instead of real credentials
in example configurations for enhanced security.
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com >
2025-11-03 03:47:41 +08:00
tinkle-community
13e1da6cf6
Merge pull request #275 from zhouyongyou/docs/adaptive-prompt-template
...
docs(prompts): 更新 AI prompt 支持動態 TP/SL 功能 (Update AI prompt to support dynamic TP/SL features)
2025-11-03 02:05:48 +08:00
ZhouYongyou
bad79337fb
docs(prompts): Update AI prompt to support dynamic TP/SL features (v5.5.1)
...
- Add 3 new action types: update_stop_loss, update_take_profit, partial_close
- Introduce "Zero Principle" (疑惑优先) for risk control
- Expand decision flow to 8 steps with critical safeguards:
* Step 2: Consecutive loss pause (2x→45min, 3x→24h, 4x→72h)
* Step 5: BTC status check (multi-timeframe MACD confirmation)
* Step 6: Long/short confirmation checklist (≥5/8 indicators)
* Step 7: Fake breakout detection (RSI multi-timeframe + candle patterns)
* Step 8: Objective confidence scoring (base 60 + conditions)
- Add signal priority ranking (trend resonance > volume > BTC > RSI...)
- Add dynamic TP/SL strategies with examples
- Increase confidence threshold: 0.6 → 0.85 for opening positions
- Add cooldown rules and slippage buffer (0.05%)
- Optimize prompt length: 4445 words → 1500 words (-66%)
Key improvements in v5.5.1:
✅ BTC status check - Most critical protection for altcoin trading
✅ Long/short checklist - 5/8 indicators required, prevent false signals
✅ Objective confidence scoring - Base 60 + condition adjustments
✅ Fake breakout logic - RSI multi-timeframe + candle filters
✅ Consecutive loss pause - 2x/3x/4x trigger different cooldowns
✅ OI confirmation - >+5% for real breakout validation
✅ Signal priority ranking - Trend resonance > volume > BTC...
✅ Slippage handling - 0.05% buffer + profit check
Design philosophy: Let AI autonomously judge trend vs chop, trust strong reasoning models.
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com >
2025-11-03 01:59:54 +08:00
芋头
2bb28a1738
文件命名空格问题
2025-11-03 00:16:28 +08:00
Liu Xiang Qian
c5516fc5fe
fix: Update model validation in handleSaveModelConfig to support both configured and supported models
...
- Change validation to check allModels first, then supportedModels
- This allows saving new model configurations without "model does not exist" error
- Fixes issue where users couldn't save AI model config after selecting from dropdown
Fixes #245
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com >
2025-11-03 00:11:44 +08:00
Ember
f3cc95d267
Merge branch 'dev' into quote-tweet-link
2025-11-02 23:56:46 +08:00
芋头
0f25e56b13
补充提示词
2025-11-02 23:56:32 +08:00
Ember
a7a0bdff41
chore(landing): add lightweight AnimatedSection wrapper for main-based branch
2025-11-02 23:52:15 +08:00
Ember
97015d31a2
chore(landing): add lightweight AnimatedSection wrapper for main-based branch
2025-11-02 23:49:23 +08:00
Ember
0b86916d8c
feat(landing): integrate real community tweets in CommunitySection with author avatars and links
2025-11-02 23:48:25 +08:00
ZhouYongyou
0eb05ddba2
fix: 过滤幽灵持仓 - 跳过 quantity=0 的持仓防止 AI 误判
...
问题:
- 止损/止盈触发后,交易所返回 positionAmt=0 的持仓记录
- 这些幽灵持仓被传递给 AI,导致 AI 误以为仍持有该币种
- AI 可能基于错误信息做出决策(如尝试调整已不存在的止损)
修复:
- buildTradingContext() 中添加 quantity==0 检查
- 跳过已平仓的持仓,确保只传递真实持仓给 AI
- 触发清理逻辑:撤销孤儿订单、清理内部状态
影响范围:
- trader/auto_trader.go:487-490
测试:
- 编译成功
- 容器重建并启动正常
2025-11-02 22:08:39 +08:00
Roninchen
b336efde0f
Merge pull request #176 from yuanshi2016/dev
...
Kline获取方式为Websocket缓存
2025-11-02 21:54:16 +08:00
tinkle-community
37c98c9626
Merge pull request #257 from SkywalkerJi/dev
...
Google Tag Manager
2025-11-02 21:47:38 +08:00
SkywalkerJi
4850aa568e
Google Tag Manager
2025-11-02 21:44:53 +08:00
ZhouYongyou
fed3ce95f3
fix: 修复部分平仓盈利计算错误
...
问题:部分平仓时,历史记录显示的是全仓位盈利,而非实际平仓部分的盈利
根本原因:
- AnalyzePerformance 使用开仓总数量计算部分平仓的盈利
- 应该使用 action.Quantity(实际平仓数量)而非 openPos["quantity"](总数量)
修复:
- 添加 actualQuantity 变量区分完整平仓和部分平仓
- partial_close 使用 action.Quantity
- 所有相关计算(PnL、PositionValue、MarginUsed)都使用 actualQuantity
影响范围:logger/decision_logger.go:428-465
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com >
2025-11-02 21:26:58 +08:00
tinkle-community
e9f6ded053
Merge pull request #246 from xqliu/fix/model-config-validation-245
2025-11-02 18:32:45 +08:00
Liu Xiang Qian
4577adabbd
fix: Update model validation in handleSaveModelConfig to support both configured and supported models
...
- Change validation to check allModels first, then supportedModels
- This allows saving new model configurations without "model does not exist" error
- Fixes issue where users couldn't save AI model config after selecting from dropdown
Fixes #245
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com >
2025-11-02 18:08:25 +08:00
yuanshi2016
95c32fcb2e
修改Kline获取方式为Websocket缓存。
2025-11-02 17:59:19 +08:00
yuanshi2016
3b1db6f64f
K线获取方式改为websocket组合流. 带重拨机制
...
流程为下:
1. 启动时使用所有交易员设置的币种(去重) 如果交易员未配置,则使用系统默认
2. 在决策获取K线时 如果没有缓存 则先实时获取后再添加订阅. ps: 适用于Api方式的币种列表
2025-11-02 14:03:13 +08:00
原始
1862223528
Merge branch 'tinkle-community:dev' into dev
2025-11-02 14:02:11 +08:00
tinkle
4f8be19a73
update aster exchange guide
2025-11-02 12:23:33 +08:00
原始
ebfdf4b9b6
Merge branch 'tinkle-community:dev' into dev
2025-11-02 12:19:40 +08:00
tinkle
23392e7409
update aster exchange guide
2025-11-02 12:15:40 +08:00
Liu Xiang Qian
8b4c107dfd
docs: Enhance timestamp/timezone troubleshooting based on Issue #60
...
Enhanced the Exchange API errors section with more detailed solutions
for timestamp-related failures, based on Issue #60 .
Problem:
- code=-1021: Timestamp outside of recvWindow
- System time not synced with Binance servers
- Docker container time drift
Enhanced Solutions:
1. System Time Sync (Multiple methods)
- ntpdate pool.ntp.org (recommended)
- ntpdate with different NTP servers
- timedatectl for automatic sync
- Aliyun NTP for China users
2. Docker-specific fixes
- Check container time vs host time
- Restart Docker service
- Add TZ environment variable
3. API Key verification steps
- Regeneration procedure
- Permission checklist
4. Rate limit considerations
- Reduce trader count
- Increase decision interval
Both English and Chinese versions updated.
Fixes : #60
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com >
2025-11-02 11:44:57 +08:00
Liu Xiang Qian
1271e278f2
docs: Add Docker image pull failure troubleshooting (China)
...
Added comprehensive troubleshooting guide for Docker image pull failures
in mainland China, based on Issue #168 .
Problem:
- Users in China cannot pull Docker images from Docker Hub
- ERROR: load metadata for docker.io/library/...
- Timeouts and connection failures
Solutions Added:
1. Configure Docker registry mirrors (Recommended)
- List of working China mirrors
- Step-by-step configuration for Linux/macOS/Windows
- Verification commands
2. Use VPN
- Taiwan nodes recommended
- Global mode required
3. Offline image download
- Image proxy websites
- Manual import instructions
Both English and Chinese versions updated.
Fixes : #168
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com >
2025-11-02 11:38:53 +08:00
Liu Xiang Qian
65809aa037
docs: Fix AI model list in FAQ - correct supported models
...
Fixed incorrect information about supported AI models:
Before (Incorrect):
- Listed OpenAI GPT-4 and Claude as directly supported
- These are NOT natively supported
After (Correct):
- DeepSeek (native support, recommended)
- Qwen (native support, Alibaba Cloud)
- Custom OpenAI-compatible APIs (can use OpenAI, Claude via proxy, etc.)
Also updated cost estimates to reflect actual supported models.
Reference: mcp/client.go shows only DeepSeek, Qwen, and Custom providers.
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com >
2025-11-02 11:09:18 +08:00
Liu Xiang Qian
89bb8d3eb6
docs: Expand FAQ and clarify separation from TROUBLESHOOTING
...
Addressed review feedback on PR #226 :
- FAQ and TROUBLESHOOTING serve different purposes and should both be kept
- FAQ: Quick Q&A format for common questions (now expanded)
- TROUBLESHOOTING: Detailed step-by-step diagnostic guide
Changes:
- Expanded FAQ from 26 lines to 200+ lines with 7 sections:
* General Questions (What is NOFX, supported exchanges, profitability)
* Setup & Configuration (requirements, API keys, subaccounts)
* Trading Questions (decision frequency, position limits, customization)
* Technical Issues (quick fixes for common errors)
* AI & Model Questions (supported models, costs, learning)
* Data & Privacy (storage, security, export)
* Contributing (how to help, feature requests)
- Added cross-references between FAQ and TROUBLESHOOTING
- FAQ provides quick answers with links to detailed troubleshooting
- TROUBLESHOOTING remains comprehensive diagnostic guide
Both English and Chinese versions updated.
Fixes review comment from @reviewer on PR #226
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com >
2025-11-02 11:04:58 +08:00
Luna Martinez
7b5970567f
Merge pull request #88 from fanyinghao/fix-decision-result
...
fix: Correct error handling in GetFullDecision function
2025-11-01 23:03:55 -04:00
Luna Martinez
5878b10c8f
Merge pull request #181 from Xeron2000/fix-broken-dashscope-link-issue-128
...
Fix broken DashScope link in README files (fixes #128 )
2025-11-01 23:00:27 -04:00