GithubHelp home page GithubHelp logo

megatripcol / signal-aggregator Goto Github PK

View Code? Open in Web Editor NEW

This project forked from theoklitos/signal-aggregator

0.0 0.0 0.0 458 KB

Scraping Forex signals

License: MIT License

HTML 4.49% JavaScript 10.71% CSS 0.41% Java 84.39%

signal-aggregator's Introduction

Forex Signal Aggregator

Monitors the performance of forex signal providers and can detect trends if multiple providers converge on the same signals.

Uses Spring Boot and phantomjs.

How it works

Periodically scrapes the advertised forex signals from the websites of signal providers. When new signals are published, a corresponding trade (BUY if the signal was a BUY signal, the same with SELL) is opened at OANDA. This is done to assess the performance of the signal when the trade closes.

This way, one can monitor how good the signals that each signal provider provides.

Signal aggregations can also be monitored. If multiple providers send out signals for the same instrument (e.g. EUR_USD) and direction (BUY or SELL) then the app detects an aggregation.

Email can be sent to notify of new signal and/or new aggregations.

Also, see the package com.quantbro.aggregator.adapters for attempts to implement scrapers for various signal providers.

How to Use

Configure

Rename or copy the application.properties.example file to application.properties.

In the same file, make sure to configure your database (MySQL).

Enable the providers you want to scrape data from. There is an example in the application.properties.examplefile, but here is another one for WeTalkTrade:

providers.weTalkTrade.rootUrl = https://signal.wetalktrade.com
providers.weTalkTrade.cronJob = 0 */30 * * * *
providers.weTalkTrade.username = [email protected]
providers.weTalkTrade.password = password
providers.weTalkTrade.accountId = 123-123-1231231-123

Also, point to a phantomjs binary:

phantomJsDriver.location = /users/current/phantomjs

OANDA

This app uses OANDA's API to get Forex data (instruments, prices, etc) therefore an OANDA account is required. Configuration:

forexClient.rootUrl = https://api-fxpractice.oanda.com
forexClient.secretKey = secretkey

Build

Build a jar with ./gradlew bootRepackage. This will create a signal-aggregator-1.2.1.jar file inside the build/libs folder.

Run

Start the spring boot service with java -jar build/libs/signal-aggregator-1.2.1.jar

Its thymeleaf-based website can be accessed, by default, at http://localhost:8081.

Or, go in signal-aggregator-frontend and do npm start, assuming you have npm installed. This is a work-in-progress React.js app that can be accessed at http://localhost:3000.

Screenshots

Showing is better than telling!

New UI! New UI! New UI! New UI! New UI!

Disclaimer

The code above is for educational purposes.

Scraping someone's data may or may not be permitted. Make sure you know that you are doing and also get permission first.

signal-aggregator's People

Contributors

theoklitos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.