stock-scanner — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited stock-scanner (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
Scan Taiwan and US stocks for technical buy signals and track selected positions for sell signals.
Use this skill when the user:
For new users, follow these steps to set up the stock scanner:
cd .agent/skills/stock-scanner
pip install -r requirements.txtRequired packages:
yfinance - Fetch stock data from Yahoo Financepandas - Data manipulation and analysisnumpy - Numerical computingmatplotlib - Plotting and visualization (for backtesting charts)Run the initialization script to create required data files:
cd scripts
python init_setup.pyThis will create empty data files if they don't exist:
watchlist.csv - Empty watchlist (will be populated when you add stocks)scan_results_with_stats.csv - Taiwan scan results (populated by scanner)us_scan_results_with_stats.csv - US scan results (populated by scanner)Note: The top_market_cap_stocks.txt cache file will be automatically created on your first Taiwan stock scan.
Execute the scanner to find stocks with technical buy signals:
cd .agent/skills/stock-scanner/scripts
python run_scanner.pyThe scanner:
strategy/scan_results_with_stats.csv.TWO suffix if .TW failsOutput: Table of stocks with buy signals, sorted by win rate.
Execute the US stock scanner to find buy signals among specified tech stocks:
cd .agent/skills/stock-scanner/scripts
python run_us_scanner.pyThe scanner:
us_scan_results_with_stats.csvCustomizing US Stock List: Edit us_stocks_list.py to change the stocks to scan.
Output: Table of US stocks with buy signals, sorted by win rate.
After scanning, help the user select stocks to track. Present the scan results and ask which stocks they want to add to their watchlist.
Example conversation:
ASSISTANT: "掃描完成!找到 26 個買入訊號。以下是勝率最高的前 10 個:
1. 2886.TW - W-Bottom (勝率 100%, 回報 9.7%)
2. 2606.TW - %B+MFI Reversal (勝率 66.7%, 回報 12.1%)
...
你想追蹤哪些股票?請提供股票代碼,例如:2886.TW 2606.TW"
USER: "2886.TW 2606.TW 3034.TW"Note: The add_to_watchlist script automatically detects whether you're adding Taiwan stocks (ending in .TW/.TWO) or US stocks, and searches the appropriate scan results files.
Then add selected stocks (works for both Taiwan and US stocks):
cd .agent/skills/stock-scanner/scripts
python add_to_watchlist.py 2886.TW 2606.TW 3034.TW
# or for US stocks:
python add_to_watchlist.py AMZN NVDA AAPLCheck tracked positions for sell signals:
cd .agent/skills/stock-scanner/scripts
python monitor_portfolio.pyThe monitor:
watchlist.csv (supports both Taiwan and US stocks)Quick Status Check: For a simple price update without full technical analysis:
python status.pyOutput: Portfolio status table + sell signal alerts.
Show current watchlist:
cd .agent/skills/stock-scanner/scripts
python show_watchlist.pyRemove positions:
cd .agent/skills/stock-scanner/scripts
python remove_from_watchlist.py 2330.TW 2454.TWThe scanner tests 8 strategies per stock:
Each signal is backtested to verify win rate and expected return.
scan_results_with_stats.csv - Latest Taiwan stock scan resultsus_scan_results_with_stats.csv - Latest US stock scan resultswatchlist.csv - User's tracked positions (supports both TW and US stocks)top_market_cap_stocks.txt - Cached top 150 Taiwan stocks (30-day validity)us_stocks_list.py - List of US stocks to scan (customizable)python init_setup.py to create required data files if they don't existpython strategy/fetch_top_stocks.py --refresh.TWO suffix if .TW failsinit_setup.py firstUSER: "掃描股票"
ASSISTANT: [Runs run_scanner.py]
[Presents results]
"找到 26 個買入訊號。你想追蹤哪些股票?"
USER: "2886.TW 2606.TW"
ASSISTANT: [Runs add_to_watchlist.py 2886.TW 2606.TW]
"已加入 2 個部位到追蹤清單!"
USER: "追蹤"
ASSISTANT: [Runs monitor_portfolio.py]
[Shows portfolio status with sell signals]USER: "scan"
ASSISTANT: [Runs run_us_scanner.py]
[Presents US stock results]
"Found 4 buy signals. Which stocks do you want to track?"
USER: "加入觀察清單 AMZN"
ASSISTANT: [Runs add_to_watchlist.py AMZN]
"✅ Successfully added AMZN to watchlist!"
USER: "追蹤"
ASSISTANT: [Runs monitor_portfolio.py]
[Shows mixed TW/US portfolio status]~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.