atr/README.md

93 lines
3 KiB
Markdown

# Indicator atr
**Average True Range (ATR) indicator using KnitPkg packages**
*MIT License*
---
## What is this?
Indicator `atr` is a **demonstration project** that showcases how to build a MetaTrader 5 indicator by consuming KnitPkg packages.
It implements a complete **Average True Range (ATR) indicator**, and is meant to be an educational example of how to structure an indicator project, manage dependencies, and compile MQL5 code with KnitPkg. It is **not** meant to be a production-grade trading system.
## Prerequisites
To build and use this project, you will need:
1. [**MetaTrader 5**](https://www.mql5.com/) installed.
2. **KnitPkg CLI**: The KnitPkg package manager for MetaTrader. If you don't have it, you can install it by following the instructions in the [main KnitPkg repository](https://github.com/knitpkg-dev/knitpkg-mt.git).
3. **KnitPkg homepage**: See [https://knitpkg.dev](https://knitpkg.dev) for an overview and [https://docs.knitpkg.dev](https://docs.knitpkg.dev) for documentation.
---
## Features
- **Indicator type** (`type: indicator`) — a complete indicator project (not a package)
- **ATR demo** — Average True Range indicator
- **Dependency installation** — uses the KnitPkg registry to resolve and download dependencies
- **Dependencies**
- `@douglasrechia/calc` — ATR calculation utilities
- `@douglasrechia/bar` — bar access utilities and series-ordered OHLC access
- **MQL5 target** — designed for MetaTrader 5
- **Compile support** — `kp compile` builds the indicator into an `.ex5` binary
---
## One-command download/build via the registry
You can use `kp get` to query the registry for metadata and automatically download/build the latest stable version.
Example (run from your MetaTrader *Data Folder* root if you have MetaTrader installed in more than one location):
```bash
cd "C:\Users\username\AppData\Roaming\MetaQuotes\Terminal\<TERMINAL_ID>"
kp get mql5 @douglasrechia/atr
```
Restart MetaTrader afterward to refresh the Navigator.
---
## Exploring the project locally (optional)
If you want to explore how an indicator project is structured with KnitPkg packages, clone it into your MetaTrader `Indicators` folder.
### 1) Clone into MetaTrader `Indicators` folder (example)
```bash
# Go to your MetaTrader 'Indicators' directory.
# Tip: in MetaEditor, right-click the `Indicators` folder and choose "Open Folder".
cd "C:\Users\username\AppData\Roaming\MetaQuotes\Terminal\<TERMINAL_ID>\MQL5\Indicators"
git clone https://forge.mql5.io/DouglasRechia/atr.git
cd atr
```
### 2) Install dependencies
```bash
kp install
```
### 3) Compile
```bash
kp compile
```
Restart MetaTrader afterward to refresh the Navigator.
---
## License
This project is released under the **MIT License**. See `LICENSE` for details.
---
## Disclaimer
This code is provided **as-is**, for **educational purposes only**.
No warranty (express or implied) is provided. Use at your own risk.