Commit Graph

848 Commits

Author SHA1 Message Date
tinkle-community 1744e7f38e feat: migrate to CoinAnk API and improve chart UI
- Chart improvements: professional styling, popular symbols quick selection, simplified B/S legend
- Data source migration: use CoinAnk API exclusively for all kline data
- Code cleanup: remove Binance WebSocket cache and related code (websocket_client.go, combined_streams.go, monitor.go)
- Log optimization: reduce hook spam, suppress 404 errors, increase P&L diff threshold
- Lighter integration: add order sync functionality, fix market order precision
- Remove ticker merge logic for simplicity
2025-12-26 00:58:12 +08:00
wqqqqqq 54b24167a7 feat: implement coinank openapi kline interface (#1275)
- implement kline interface
2025-12-25 14:24:35 +08:00
wqqqqqq c328e23278 feat: implement coinank openapi netPositions interface (#1258)
- implement Net long & Net short interface
2025-12-23 00:06:14 +08:00
tinkle-community d8aeba6906 fix: remove unused badge property from FooterSection 2025-12-21 13:23:13 +08:00
tinkle-community 58a3253817 update docs 2025-12-21 02:40:17 +08:00
tinkle-community e5e42c8e18 update docs 2025-12-21 02:37:11 +08:00
tinkle-community 16ff57778d update docs 2025-12-21 01:36:16 +08:00
tinkle-community 27196a379e update docs 2025-12-21 01:28:18 +08:00
tinkle-community 2eb3cac7e1 update docs 2025-12-21 01:17:34 +08:00
tinkle-community bbda385696 docs: update legal framework to international copyright treaties 2025-12-20 23:50:13 +08:00
tinkle-community 0407bca549 docs: add legal remedies for AGPL infringement 2025-12-20 23:46:00 +08:00
tinkle-community 35c1bae4e0 docs: add ChainOpera evidence screenshot 2025-12-20 23:40:59 +08:00
tinkle-community cd5126599f docs: update contact email 2025-12-20 23:32:57 +08:00
tinkle-community cbc66a85e8 docs: add AGPL violation evidence report against ChainOpera (CN/EN)
- Add Chinese version: AGPL-VIOLATION-REPORT-ChainOpera.md
- Add English version: AGPL-VIOLATION-REPORT-ChainOpera-EN.md
- Document timeline evidence, technical comparison, and legal analysis
- Address "Python rewrite" defense with AGPL and copyright law references
2025-12-20 23:26:20 +08:00
tinkle-community 0009c9c3dd feat: add BOLL (Bollinger Bands) indicator to Strategy Studio
- Add BOLL to frontend indicator grid with period selection
- Add BOLL calculation (upper/middle/lower bands) in market data
- Add BOLL fields to TimeframeSeriesData struct
- Integrate BOLL into AI decision engine prompts
- Support multi-timeframe BOLL analysis
2025-12-20 16:17:16 +08:00
tinkle-community 8e57fb986f fix: improve exchange/model edit and usage status display
- Fixed ExchangeConfigModal to use allExchanges for editing
- Improved wallet address display layout (moved to right side)
- Added privacy toggle and copy button for addresses
- Enhanced usage status for both AI models and exchanges:
  - Shows '2/3 Running' when traders are active (green badge)
  - Shows '2 Traders' when assigned but stopped (yellow badge)
  - Shows 'Idle' when enabled but not used
  - Shows 'Configured' when not enabled
2025-12-20 15:53:43 +08:00
tinkle-community d1ff1c2375 fix: exchange edit modal now shows account data correctly
Fixed ExchangeConfigModal to receive allExchanges (user's configured accounts)
instead of supportedExchanges (templates only), so editing an exchange now
properly displays account name and other non-sensitive information.
2025-12-20 15:30:54 +08:00
tinkle-community 710d9e4943 feat: increase default max users to 10 and add update reminder
- Change default MaxUsers from 5 to 10 in config
- Add update reminder section in install.sh output
- Add 'Keeping Updated' section in all README translations
2025-12-20 13:44:47 +08:00
wqqqqqq 7baa07738a feat: implement coinank openapi rank interface (#1250)
- implement VisualScreener Rank
- implement More Instrument Agg Rank
- rank interface can help user to choose a coin
2025-12-20 01:12:50 +08:00
tinkle-community e2d702c662 feat: enhance backtest with real-time positions, P&L fixes, and strategy integration
- Add real-time position display with unrealized P&L during backtest
- Fix P&L calculation by tracking accumulated opening fees
- Add strategy coin source resolution (AI500, OI Top, mixed)
- Infer AI provider from model name for better compatibility
- Cap position size to available margin to prevent insufficient cash errors
- Fix trade markers on K-line chart (long/short instead of buy/sell)
- Add QuantData and OI ranking to backtest decision context
2025-12-20 01:10:11 +08:00
tinkle-community 5534861fe5 feat: display wallet address for perp-dex exchanges with visibility toggle
- Add wallet address display for perp-dex exchanges (hyperliquid, lighter, aster)
- Add eye icon to toggle address visibility (truncated/full)
- Add copy to clipboard functionality
- Fix dashboard refresh losing selected trader
- Use URL slug format (name-id4) for trader identification
2025-12-19 18:38:21 +08:00
tinkle-community 97f58b49f4 feat: add experience improvement module and system config storage (#1248)
- Add experience module for product telemetry
- Add system_config table for persistent settings
- Update privacy policy documentation
2025-12-19 13:57:08 +08:00
wqqqqqq c81e6b0094 feat: implement coinank openapi liquidation interface (#1247)
- implement LiquidationExchangeStatistics,LiquidationCoinAggHistory in provider/coinank/liquidation.go
- implement LiquidationHistory,LiquidationOrders in provider/coinank/liquidation.go
2025-12-18 21:44:43 +08:00
wqqqqqq 182265c1d0 feat: implement coinank openapi Instruments interface (#1243)
- implement OpenInterestAll,OpenInterestChartV2,OpenInterestSymbolChart,OpenInterestKline in provider/coinank/open_interest.go
- implement OpenInterestAggKline,TickersTopOIByEx,InstrumentsOiVsMc in provider/coinank/open_interest.go
2025-12-17 18:55:31 +08:00
wqqqqqq 612e25db66 feat: init coinank openapi http request framework (#1240) 2025-12-17 10:22:02 +08:00
tinkle-community b169fcd3d2 feat: add time period selector to competition chart (1D/3D/7D/30D/All) 2025-12-17 03:51:21 +08:00
tinkle-community 96d3ab6cc5 fix: auto-convert wallet address to EIP-55 checksum format for Lighter API 2025-12-16 16:48:56 +08:00
tinkle-community e4d9ea032d fix: position sizing guidance and Lighter sub-accounts support
- Fix hardcoded 5x position ratio in AI prompt example, now uses configured ratio
- Add position sizing guidance section for AI to calculate proper position size
- Add sub_accounts support for Lighter account API
2025-12-16 00:00:07 +08:00
tinkle-community 05c480d3f0 fix: Lighter stop/take-profit orders must use TimeInForce=0 (ImmediateOrCancel)
Lighter SDK validates that StopLossOrder (type=2) and TakeProfitOrder (type=4)
must have TimeInForce=0 (ImmediateOrCancel), not TimeInForce=1 (GoodTillTime).

This was causing stop-loss and take-profit orders to fail validation and not
be submitted to Lighter exchange.
2025-12-15 22:34:29 +08:00
tinkle-community 3f084005e4 feat: upgrade Binance to Algo Order API and improve trading flow
- Upgrade go-binance to v2.8.9 with new Algo Order API
- Migrate SetStopLoss/SetTakeProfit to use AlgoOrderTypeStopMarket/TakeProfitMarket
- Update cancel functions to handle both legacy and Algo orders
- Fix Lighter stop orders using correct order types (type=2/4) with TriggerPrice
- Add CancelAllOrders before opening positions for Bybit and Lighter
- Fix decision limit selector in API handler
- Add stop_loss/take_profit/confidence fields to DecisionAction
- Store decisions array in database with proper serialization
- Redesign DecisionCard with beautiful entry/SL/TP display
2025-12-15 21:22:22 +08:00
tinkle-community aeede956e6 docs: add bilingual module documentation (EN/ZH) 2025-12-15 18:07:52 +08:00
tinkle-community 62df4a46f5 docs: add documentation section with architecture links to README 2025-12-15 16:05:33 +08:00
tinkle-community 0e4978002b docs: rewrite architecture README with module references 2025-12-15 16:02:05 +08:00
tinkle-community 85cf8c4986 docs: add backtest and debate module technical documentation 2025-12-15 15:55:07 +08:00
tinkle-community 7532d09dfb docs: add strategy module technical documentation
- Complete data flow from coin selection to execution
- System/user prompt construction details
- AI response parsing and validation
- Risk control enforcement
- Code file references with line numbers
2025-12-15 15:33:40 +08:00
tinkle-community 57a9cc2930 fix: competition chart showing only one line
- Normalize timestamps to nearest minute for proper alignment
- Forward-fill missing values to ensure continuous lines
- Use actual data range for Y-axis instead of forcing zero
2025-12-15 11:55:00 +08:00
tinkle-community acd549e272 chore: remove unused Lighter integration docs and migration
- Schema already handles lighter_api_key_private_key field
- Migration script is redundant
2025-12-14 23:20:16 +08:00
tinkle-community f901f954d9 feat: comprehensive FAQ rewrite with navigation fix
- Add HeaderBar to FAQ page for proper navigation
- Rewrite FAQ with 9 categories and ~50 Q&A items
- Add EN/ZH translations for all FAQ content
- Remove China-specific references
- Update AI model names (GPT-5.2)
- Update description to include crypto and US stock markets
2025-12-14 23:12:09 +08:00
tinkle-community da1d905a31 fix: replace localhost with 127.0.0.1 and auto-detect server IP
- Install script now auto-detects server IP for remote deployments
- Changed all localhost:3000 references to 127.0.0.1:3000 for local access
- Updated README (EN/ZH) and frontend translations
2025-12-14 22:30:06 +08:00
tinkle-community 1785184481 docs: add Windows installation guide 2025-12-14 22:26:10 +08:00
tinkle-community 3bb516e469 docs: update documentation 2025-12-14 22:21:50 +08:00
tinkle-community 4725548a55 feat: fix Lighter V2 integration and improve error handling
- Fix Lighter API field name mismatches (position/size, avg_entry_price/entry_price, sign/side)
- Fix GetBalance return format to match standard fields (totalWalletBalance, totalUnrealizedProfit)
- Fix GetPositions return format to match standard fields (positionAmt, markPrice, unRealizedProfit)
- Add API Key Index field to frontend with explanation
- Update Lighter referral link
- Disable Lighter testnet (mainnet only)
- Add load error tracking for better error messages
- Remove old Lighter V1 implementation files
- Remove test credentials from test files
2025-12-14 20:50:10 +08:00
tinkle-community abaffaddb9 fix: add SSRF protection for user-controlled URLs
- Add security/url_validator.go with ValidateURL, SafeHTTPClient, SafeGet
- Block private IP ranges (127.0.0.0/8, 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16, 169.254.0.0/16)
- Block cloud metadata endpoints (169.254.169.254, metadata.google.internal)
- Validate DNS resolution to prevent DNS rebinding attacks
- Check redirect destinations for SSRF
- Fix FetchQuantData, FetchOIRanking, fetchAI500, fetchOITop, fetchSingleExternalSource
2025-12-14 12:01:23 +08:00
tinkle-community 48084f50cf docs: update README screenshots with backtest lab
- Rename img.png to backtest-lab.png
- Arrange 12 screenshots in 6 pairs (2 per row)
- Add Backtest Lab to Web Interface Features section
2025-12-14 00:42:26 +08:00
tinkle-community 1e135ea9c3 feat: redesign backtest module UI and fix 404 issue
- Fix backtest API 404 by registering routes in setupRoutes()
- Redesign BacktestPage with 3-step wizard configuration
- Add progress ring visualization with animation
- Add equity chart with trade markers using Recharts
- Add trade timeline with card-style display
- Add stats cards for equity, return, drawdown, sharpe
- Add tab navigation for overview/chart/trades/decisions
- Improve run history list with status icons
- Add lightweight-charts dependency (for future use)
2025-12-14 00:23:51 +08:00
tinkle-community 4aa612f397 refactor: rename pool to provider (Data Provider) 2025-12-13 21:43:43 +08:00
tinkle-community c4363f3bc7 fix: use strategy config for position value ratio validation instead of hardcoded 1.5x 2025-12-13 20:47:15 +08:00
tinkle-community 0381815a13 feat: add dropdown selector for Recent Decisions count (5/10/20/50/100) 2025-12-13 00:13:29 +08:00
tinkle-community 7806749297 fix: use max_completion_tokens for OpenAI newer models 2025-12-12 23:32:32 +08:00
tinkle-community 5391f39749 chore: upgrade OpenAI default model to gpt-5.2 2025-12-12 23:30:24 +08:00