This report was generated in Chinese. Some content may be in Chinese.
Trusted — Risk Score 5/100
Last scan:5 hr ago Rescan
5 /100
tradingview-screener
Screen markets across 6 asset classes using TradingView data. API pre-filters + pandas computed signals. YAML-driven strategies.
TradingView Screener 技能功能清晰,无恶意行为,依赖官方 tvscreener 库进行市场数据筛选,代码结构规范。
Skill Nametradingview-screener
Duration53.0s
Enginepi
ClawHub TV Signal Screener v1.1.0 by nomadrex
📥 146
ClawHub Verdict Suspicious dynamic_code_execution
Safe to install
可直接使用。该技能符合声明功能,无敏感操作或数据外泄行为。

Findings 2 items

Severity Finding Location
Low
依赖版本使用宽松约束 Supply Chain
requirements.txt 中 tvscreener、pandas、pyyaml、pytest 均使用 >= 约束而非固定版本,可能引入供应链风险
tvscreener>=0.2.0
→ 建议锁定次要版本(如 tvscreener>=0.2.0,<0.3.0)以平衡兼容性和安全性
scripts/requirements.txt:1
Info
表达式验证机制理论风险 Obfuscation
signal_types.py 使用黑名单验证表达式关键字(import, exec, eval, __, open, os, sys, lambda),理论上可通过字符编码绕过
EXPR_BLOCKED_KEYWORDS = {"import", "exec", "eval", "__", "open", "os", "sys", "lambda"}
→ 当前 df.eval() 沙箱已限制大多数攻击,但建议改用更严格的 AST 解析白名单验证
scripts/signal_types.py:17
ResourceDeclaredInferredStatusEvidence
Filesystem READ READ ✓ Aligned scripts/screen.py:1 仅读取本地脚本和 YAML 配置
Network READ READ ✓ Aligned tvscreener 库调用 TradingView API 获取市场数据,行为符合声明
Shell WRITE WRITE ✓ Aligned install.sh 仅用于创建 venv 和 pip install,属于正常安装流程
Environment NONE NONE 代码未访问 os.environ
Database NONE NONE 无数据库操作

File Tree

19 files · 59.6 KB · 2145 lines
Markdown 5f · 1032L Python 7f · 881L YAML 4f · 166L Shell 1f · 51L JSON 1f · 11L Text 1f · 4L
├─ 📁 assets
│ └─ 📋 signal-template.yaml YAML 58L · 1.6 KB
├─ 📁 references
│ ├─ 📝 computed-signals-guide.md Markdown 222L · 5.0 KB
│ ├─ 📝 field-presets.md Markdown 281L · 6.9 KB
│ ├─ 📝 strategy-templates.md Markdown 235L · 5.8 KB
│ └─ 📝 tvscreener-api-guide.md Markdown 174L · 4.5 KB
├─ 📁 scripts
│ ├─ 📁 tests
│ │ ├─ 🐍 __init__.py Python 0 B
│ │ ├─ 🐍 test_screen.py Python 135L · 3.9 KB
│ │ └─ 🐍 test_signal_engine.py Python 191L · 5.9 KB
│ ├─ 📄 requirements.txt Text 4L · 58 B
│ ├─ 🐍 screen.py Python 125L · 4.5 KB
│ ├─ 🐍 screener_constants.py Python 88L · 2.9 KB
│ ├─ 🐍 signal_engine.py Python 169L · 5.5 KB
│ └─ 🐍 signal_types.py Python 173L · 5.5 KB
├─ 📁 state
│ └─ 📁 signals
│ ├─ 📋 golden-cross.yaml YAML 35L · 728 B
│ ├─ 📋 oversold-bounce.yaml YAML 36L · 766 B
│ └─ 📋 volume-breakout.yaml YAML 37L · 772 B
├─ 📋 _meta.json JSON 11L · 292 B
├─ 🔧 install.sh Shell 51L · 1.2 KB
└─ 📝 SKILL.md Markdown 120L · 3.8 KB

Dependencies 4 items

PackageVersionSourceKnown VulnsNotes
tvscreener >=0.2.0 pip No 无版本锁定,使用宽松约束
pandas >=2.0.0 pip No 官方库
pyyaml >=6.0 pip No 官方库
pytest >=7.0.0 pip No 开发依赖

Security Positives

✓ 功能声明清晰,与实际代码完全对应
✓ 无凭证收割、远程代码执行或数据外泄行为
✓ 表达式验证机制(即使使用黑名单)增加了防护层
✓ 测试覆盖率完整,包含单元测试和集成测试
✓ 使用官方 tvscreener 库而非自实现 API 调用
✓ YAML 配置文件验证严格,确保必需字段存在
✓ 文档详尽,包含 API 指南、信号指南和策略模板