Skip to content

FibScout is a Python-based tool for advanced cryptocurrency analysis. It uses real-time data from ccxt.gate(), applies the Awesome Oscillator and Fibonacci retracement levels, and delivers instant Telegram alerts. Designed for efficient market monitoring, it supports asynchronous execution and seamless deployment on platforms like Railway.

License

Notifications You must be signed in to change notification settings

AlrzA2003/FibScout

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

FibScout

FibScout is a Python project that leverages technical indicators—specifically the Awesome Oscillator and Fibonacci retracement levels—for market trend analysis and real-time alerts in the cryptocurrency space. FibScout fetches live data using the ccxt library (specifically ccxt.gate()), generates detailed candlestick charts with Fibonacci overlays via mplfinance, and sends alerts directly to your Telegram app through a custom bot.

Table of Contents

Features

  • Real-Time Data Fetching: Retrieves live OHLCV data from crypto exchanges using ccxt.
  • Technical Analysis: Calculates the Awesome Oscillator and dynamically computes Fibonacci retracement levels.
  • Interactive Charting: Generates candlestick charts with Fibonacci horizontal lines using mplfinance and Matplotlib.
  • Telegram Alert Bot: Sends real-time alerts to your Telegram chat when market conditions are met.
  • Asynchronous and Scheduled Tasks: Uses multithreading and asyncio to concurrently manage data updates, strategy evaluations, and bot interactions.

Prerequisites

  • Python 3.7+
  • A cryptocurrency exchange account (e.g., Gate.io via ccxt.gate() or similar)
  • A Telegram account and a bot token (from BotFather)
  • Basic understanding of Python and algorithmic trading principles

Installation

  1. Clone this repository:

    git clone https://github.com/AlrzA2003/FibScout.git
    cd FibScout
  2. Install the required packages:

    pip install -r requirements.txt

    Optional: To ensure compatibility, you may also install from a specific requirements file if provided.

Setup

  1. Configuration File:
    Change the information in a file named information.txt in the root directory with the following key-value pairs:

    symbol=BTC/USDT
    timeframe=4h
    token_id=YOUR_TELEGRAM_BOT_TOKEN
    

    Adjust the parameters as needed.

  2. Environment:
    Ensure that any additional API keys or settings needed for the cryptocurrency exchange (via ccxt.gate()) are properly configured.

Usage

After setting up, run the project with:

python FibScout.py

The script will:

  • Connect to the cryptocurrency exchange and fetch market data.
  • Compute technical indicators and generate candlestick charts with Fibonacci retracement levels.
  • Start a Telegram bot to interact with you and send real-time alert messages when market conditions are triggered.

Deployment on Railway

To deploy FibScout on Railway for free (no credit card required), follow these steps:

  1. Ensure you have the Dockerfile and nixpacks.toml files in your project directory.

  2. Create a Railway account and start a new project:

    Sign up for Railway (free trial available)

  3. Deploy your repository:

    • Select "Deploy from GitHub".
    • Choose your FibScout repository.
  4. Deploy and Monitor:

    • Railway will automatically build and deploy your project using the Dockerfile.
    • Monitor logs and manage the service through the Railway dashboard.

How It Works

FibScout operates as follows:

  1. Data Acquisition: Fetches live OHLCV data from a crypto exchange using ccxt.gate().
  2. Technical Analysis: Computes the Awesome Oscillator and determines key Fibonacci retracement levels by analyzing recent market trends.
  3. Charting: Plots these levels on candlestick charts with mplfinance and Matplotlib.
  4. Real-Time Alerts: Sends Telegram messages with alert information when the current price moves within specific Fibonacci bands.
  5. Asynchronous Execution: Runs the Telegram bot (handling commands such as /start, /help, /chart, /stop) on the main thread, while a scheduler in a background thread continuously triggers data updates and strategy evaluations.

Risk Disclaimer

Trading cryptocurrencies involves significant risk and is not suitable for everyone. FibScout is designed for educational and experimental purposes only. Please consider the following:

  • Trading strategies based on technical indicators carry inherent risks.
  • Never trade with funds you cannot afford to lose.
  • The author is not responsible for any financial losses incurred using this software.
  • Always test with a demo environment or paper trading before trading real funds.

Resources

The development of FibScout was guided by the following resources:

  1. ccxt Library – GitHub
  2. mplfinance – Documentation
  3. python-telegram-bot – Documentation
  4. Data Analysis with Pandas and NumPy – Various online courses and tutorials

Contributing

Contributions to FibScout are welcome! Please feel free to open issues or submit pull requests with suggestions for improvements, new features, or bug fixes.

License

This project is licensed under the MIT License – see the LICENSE file for details.

About

FibScout is a Python-based tool for advanced cryptocurrency analysis. It uses real-time data from ccxt.gate(), applies the Awesome Oscillator and Fibonacci retracement levels, and delivers instant Telegram alerts. Designed for efficient market monitoring, it supports asynchronous execution and seamless deployment on platforms like Railway.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published