# Data Cleaning

> Cleans and preprocesses financial time series data. Handles missing values, outliers, corporate actions (splits, dividends), date alignment, and data quality checks. Trigger when the user has messy financial data or needs to prepare data for analysis.

- **Type:** Skill
- **Install:** `agentstack add skill-qunyou-agent-finance-skills-data-cleaning`
- **Verified:** Yes — security-reviewed for prompt injection and unsafe behavior
- **Seller:** [qunyou-agent](https://agentstack.voostack.com/s/qunyou-agent)
- **Installs:** 0
- **Category:** [Agent Skills](https://agentstack.voostack.com/c/agent-skills)
- **Latest version:** 0.1.0
- **License:** MIT
- **Upstream author:** [qunyou-agent](https://github.com/qunyou-agent)
- **Source:** https://github.com/qunyou-agent/finance-skills/tree/main/skills/data/data-cleaning

## Install

```sh
agentstack add skill-qunyou-agent-finance-skills-data-cleaning
```

Requires the [AgentStack CLI](https://agentstack.voostack.com/docs/cli). Works with Claude Code, Cursor, and any MCP-compatible agent.

## About

# Data Cleaning

Prepares financial time series data for analysis by handling common data quality issues.

## Real Code Reference

- `tradinglearn/utils/data_fetcher.py` — `fetch_stock_data()` normalizes TDX raw data to clean DataFrame
- `tradinglearn/utils/simple_pytdx2.py` — mock data generator with controllable noise
- `tradinglearn/pytdx2/client/quotationClient.py` — raw data source (prices need scaling adjustments)

## Capabilities

- **Missing values**: forward fill (ffill), linear interpolation, drop, or flag
- **Outlier detection**: z-score, IQR, moving average deviation
- **Corporate actions**: adjust prices for splits and dividends using adjustment factors
- **Date alignment**: merge multiple series on common trading dates (not calendar dates)
- **Data quality**: volume anomalies, price gaps > N%, stale data, duplicate rows

## Typical Workflow

1. Load raw data → `pd.DataFrame` with columns: date, open, high, low, close, volume
2. Check nulls → `df.isnull().sum()`, decide fill strategy
3. Detect outliers → flag bars where `abs(zscore(returns)) > 3`
4. Adjust for splits → apply adjustment factor series
5. Align dates → reindex to intersection of all trading calendars
6. Validate → no NaNs, no suspicious jumps, no future dates

## Edge Cases

- Non-trading days: use trading calendar, not calendar days
- IPO dates: trim to actual listing date (data before is invalid)
- Suspended stocks: forward-fill last price or mark as NaN
- Pre/after-hours: decide whether to include or filter

## Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

- **Author:** [qunyou-agent](https://github.com/qunyou-agent)
- **Source:** [qunyou-agent/finance-skills](https://github.com/qunyou-agent/finance-skills)
- **License:** MIT

Install and usage instructions live in the source repository linked above.

## Pricing

- **Free** — Free

## Security capabilities

Automated source analysis of v0.1.0 — what this tool can access:

- **Network access:** no
- **Filesystem access:** no
- **Shell / process execution:** no
- **Environment & secrets:** no
- **Dynamic code execution:** no

*"Yes" means the capability is present in the source — more access means more to trust, not that it is unsafe.*


## Versions

- **0.1.0** — security scan: passed — Imported from the upstream source.

## Links

- Listing page: https://agentstack.voostack.com/l/skill-qunyou-agent-finance-skills-data-cleaning
- Seller: https://agentstack.voostack.com/s/qunyou-agent
- Browse the marketplace: https://agentstack.voostack.com/browse

---
Listed on AgentStack — the marketplace for AI agent skills and MCP servers. Every listing is security-reviewed. Creators keep 70%.
