Skip to main content

Forex Dashboard

Project Status

Testing Package
Testing Status PyPI Latest Release

Overview

Forex Dashboard is a comprehensive tool designed for Forex traders to monitor and analyze their trading performance metrics. By seamlessly integrating with the MT5 terminal on Windows, the tool extracts trading deals, processes the data, and presents it in a user-friendly dashboard using Streamlit. This dashboard provides traders with insights into their daily wins, traded commodities, profit margins, and overall growth percentages.

Also, you can read on Medium : Introducing Forex Dashboard: A Comprehensive Tool for Forex Traders

Features

  • ETL Process: Extracts trading data from the MT5 terminal, transforms it for analysis, and loads it into a CSV file.
  • Streamlit Dashboard: Displays key performance metrics, including:
    • Daily wins and losses.
    • Traded commodities breakdown.
    • Profit gains and losses.
    • Daily and overall portfolio growth.
    • Commissions paid.
    • Daily and Total Trades executed.
    • Weekly and Monthly gains.

Prerequisites

  • Operating System: Windows (Tested on Windows 11)
  • MT5 terminal installed on a Windows machine MT5 Downloads.
  • Python >= 3.11 environment with necessary packages.

Setup and Usage

  1. Create a Conda Environment:

    conda create --name <env_name> python=3.11
    
  2. Clone the Repository:

    pip install fx_analytics
    pip install MetaTrader5 -> required to access MT5 for your historical trade deals!
    
  3. To extract all your historical trades data from MT5 Terminal:

    import fx_analytics
    from fx_analytics.main_functions import ETL
    
    
    # replace '****' with your login credential from MT5 terminal!
    mt5_credentials = {'login': '******', 'server':'******','password':'******'}
    df = ETL(from_date='2023-09-01', mt5_credentials = mt5_credentials)
    print(df)
    
  4. To use/test the streamlit app from the package: To test app you can download the example data which was extracted from MT5, download data.

    • Copy the below code into .py file
    import fx_analytics 
    from fx_analytics.app import main
    
    main('fx_history.csv')
    

    To Run this file from CLI:

    streamlit run {file_name.py}
    
  5. To run both ETL to extract your data from MT5 and view the analytics streamlit dashboard

    • create a python script 'app.py' and copy and past the below code, change the 'from_date' with your desired date and 'data_file_path', where you choose to stores the data extracted from ETL function, I prefer to use a data folder eg: 'data/{file_name.csv}'
    import fx_analytics 
    from fx_analytics.app import main
    from fx_analytics.main_functions import ETL
    
    # replace '****' with your login credential from MT5 terminal!
    mt5_credentials = {'login': '******', 'server':'******','password':'******'}
    df = ETL(from_date='2023-09-28', mt5_credentials = mt5_credentials)
    df.to_csv('data_file_path')
    main('data_file_path')
    

    To Run this file from CLI:

    streamlit run app.py
    

Output

  • streamlit app preview: picture alt

Feedback and Contribution

  • We welcome feedback and contributions! If you encounter any issues or have suggestions, please open an issue. If you'd like to contribute, please create a pull request.

Metadata

Release files for fx-analytics 1.6.5

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for fx-analytics 1.6.5
File Size Uploaded Provenance Actions
fx_analytics-1.6.5.tar.gz 13.9 kB Without provenance Details for fx_analytics-1.6.5.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for fx-analytics 1.6.5
File Interpreter ABI Platform Actions
fx_analytics-1.6.5-py3-none-any.whl Python 3 none any Details for fx_analytics-1.6.5-py3-none-any.whl

Total release size: 27.7 kB

Release files / fx_analytics-1.6.5.tar.gz

Download URL fx_analytics-1.6.5.tar.gz
Size 13.9 kB
Tags Source
SHA-256 checksum
How to use checksums
db0b87363481f35d5b4a69d94c7b1c3f605246709877a608bdf8e290d282484f
BLAKE2b-256 checksum
How to use checksums
84cf6ca5ae7b70c2ec73e9af989bfdb55fe7339e611c8240c4eceea505e5c6c8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.11.7

Release files / fx_analytics-1.6.5-py3-none-any.whl

Download URL fx_analytics-1.6.5-py3-none-any.whl
Size 13.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
aba91645a8b2ae03763a199ce508966f05fe6f79e90e834014f0a8562b8da3a3
BLAKE2b-256 checksum
How to use checksums
e272a862e713a5f114f547fa0c841432b913580becd0e93abd07dd665e629567
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.11.7

Security for fx-analytics 1.6.5

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page