Skip to main content

A comprehensive wrapper for JBlanked's News API, leveraging OpenAI, Machine Learning, and MQL5's Calendar.

Project description

JB-News

This library is a comprehensive wrapper for JBlanked's News API. It leverages the power of OpenAI, Machine Learning, and MQL5's Calendar to provide developers with easy access to news data across all computer languages, including MQL4 and Python. Full documentation: https://www.jblanked.com/news/api/docs/

Features

  • Easy access to JBlanked's News API
  • Access to News Event History, Machine Learning Predictions, Smart Analysis, and more.
  • Access to News Calendar
  • Supports multiple programming languages including MQL4 and Python

Python Installation

pip install jb-news

This API is freely accessible through our library and through GET requests. Get your API key from: https://www.jblanked.com/profile/. Note that the free tier has a rate limit of once every 5 minutes, but VIP members enjoy unrestricted access.

Python Usage

After installation, import the class:

from jb_news.news import JBNews 

Then set a variable as an instance of the JBNews class:

jb = JBNews()

A list of Event IDs are found on https://www.jblanked.com/news/api/docs/.

Next, set your API key and Event ID:

API_KEY = "YOUR_API_KEY_HERE" 
NEWS_SOURCE = NEWS_SOURCE_MQL5  # or NEWS_SOURCE_FOREX_FACTORY, NEWS_SOURCE_FXSTREET
EVENT_ID = 756020001 # CHF CPI

jb.offset = 7  # GMT-3 = 0, GMT = 3, EST = 7, PST = 10

Next step is to connect to the API by using the get method.

if jb.get(API_KEY, news_source=NEWS_SOURCE):  

Lastly, load the event info of the specified Event ID:

    if jb.load(EVENT_ID):  
        name = jb.info.name 
        currency = jb.info.currency 
        event_id = jb.info.event_id 
        history = jb.info.history 
        category = jb.info.category
        machine_learning = jb.info.machine_learning
        smart_analysis = jb.info.smart_analysis

        # print the news info
        print(f"Event Name: {name}\nEvent ID: {event_id}\nCurrency: {currency}")

Alternatively, instead of using the get method, you can load the calendar:

if jb.calendar(API_KEY,today=True,news_source=NEWS_SOURCE):
    for event in jb.calendar_info:
        name = event.name
        currency = event.currency 
        event_id = event.event_id 
        impact = event.impact
        category = event.category 
        date = event.date 
        actual = event.actual
        forecast = event.forecast 
        previous = event.previous 
        outcome = event.outcome 
        strength = event.strength 
        quality = event.quality 

        # print the calendar info
        print(f"Event Name: {name}\nEvent ID: {event_id}\nCurrency: {currency}\nImpact: {impact}\nDate: {date}\nActual: {actual}\nForecast: {forecast}\nPrevious: {previous}")

You can also access our NewsGPT model:

gpt_response = jb.gpt(api_key,"What does bullish mean in forex?")
print(gpt_response)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

jb_news-2.3.4-py3-none-any.whl (6.1 kB view details)

Uploaded Python 3

File details

Details for the file jb_news-2.3.4-py3-none-any.whl.

File metadata

  • Download URL: jb_news-2.3.4-py3-none-any.whl
  • Upload date:
  • Size: 6.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.4

File hashes

Hashes for jb_news-2.3.4-py3-none-any.whl
Algorithm Hash digest
SHA256 c746729f4cf3dc3e8fa6b689de118c9612dd1cfbeacd387fb51e35d2a75da570
MD5 c0ff2abe74786374e1005e4e56e03f8f
BLAKE2b-256 543e05687a539e734ac63cd2f4e740ee0c79b57580e03f824acf6bbf05454c96

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page