All Projects → thanhnguyennguyen → Trading Indicator

thanhnguyennguyen / Trading Indicator

provide trading technical indicator values based on data of almost crypto currency exchanges

Programming Languages

javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to Trading Indicator

Cryptofeed
Cryptocurrency Exchange Websocket Data Feed Handler
Stars: ✭ 643 (+1974.19%)
Mutual labels:  coinbase, kraken, bitfinex, gemini, trading, binance, bittrex
Nescience-Indexing-CLI
Nescience Software & Capital Rebalancing Tool
Stars: ✭ 26 (-16.13%)
Mutual labels:  coinbase, gemini, bitfinex, kraken, bittrex, binance
Exchanges Php
This is a virtual currency SDK that brings together multiple exchanges
Stars: ✭ 134 (+332.26%)
Mutual labels:  coinbase, kraken, bitfinex, binance, bittrex
Crypto vba
An Excel/VBA project to communicate with various cryptocurrency exchanges APIs
Stars: ✭ 103 (+232.26%)
Mutual labels:  coinbase, kraken, bitfinex, binance, bittrex
Krypto Trading Bot
Self-hosted crypto trading bot (automated high frequency market making) written in C++
Stars: ✭ 2,589 (+8251.61%)
Mutual labels:  coinbase, kraken, bitfinex, trading, binance
Cryptotrader
A responsive dynamic webapp to trade cryptopairs on the most prominent exchanges
Stars: ✭ 118 (+280.65%)
Mutual labels:  kraken, bitfinex, trading, bittrex
My Token
📈Track token prices of your favorite exchanges in terminal!
Stars: ✭ 141 (+354.84%)
Mutual labels:  kraken, bitfinex, binance, bittrex
Cryptocurrency Portfolio
Google Sheets automatic creation with Google Apps Script (GAS) for managing a cryptocurrency tracking spreadsheet with multi exchanges
Stars: ✭ 134 (+332.26%)
Mutual labels:  kraken, bitfinex, binance, bittrex
Crypto Exchange
Pulls together list of crypto exchanges to interact with their API's in a uniform fashion.
Stars: ✭ 241 (+677.42%)
Mutual labels:  kraken, bitfinex, gemini, bittrex
Crypto Trading Bot
Cryptocurrency trading bot in javascript for Bitfinex, Bitmex, Binance, FTX, Bybit ... (public edition)
Stars: ✭ 1,089 (+3412.9%)
Mutual labels:  coinbase, bitfinex, trading, binance
Exchangesharp
ExchangeSharp is a powerful, fast and easy to use .NET/C# API for interfacing with many crypto currency exchanges. REST and web sockets are supported.
Stars: ✭ 489 (+1477.42%)
Mutual labels:  kraken, bitfinex, gemini, bittrex
guncontrol
🔔 GunControl • Custom *nix launcher for GunBot
Stars: ✭ 16 (-48.39%)
Mutual labels:  trading, kraken, bittrex
Crypto Signal
Github.com/CryptoSignal - #1 Quant Trading & Technical Analysis Bot - 3,100+ stars, 900+ forks
Stars: ✭ 3,690 (+11803.23%)
Mutual labels:  coinbase, trading, binance
Twitter Activated Crypto Trading Bot
Buys crypto through keyword detection in new tweets. Executes buy in 1 second and holds for a given time (e.g. Elon tweets 'doge', buys Dogecoin and sells after 5 minutes). Tested on Kraken and Binance exchanges
Stars: ✭ 92 (+196.77%)
Mutual labels:  trading, kraken, binance
market-maker-bot
MM Bot for OpenDEX. Make profits via arbitrage between OpenDEX and a connected CEX account like Binance 🤖
Stars: ✭ 84 (+170.97%)
Mutual labels:  bitfinex, kraken, binance
algo-coin
Python library for algorithmic trading cryptocurrencies across multiple exchanges
Stars: ✭ 386 (+1145.16%)
Mutual labels:  coinbase, gemini, kraken
CoinTaxman
Calculate your taxes from cryptocurrency gains
Stars: ✭ 110 (+254.84%)
Mutual labels:  coinbase, kraken, binance
BitView
A crypto portfolio written in Flutter. It supports Binance, Bittrex, HitBTC, Coinbase, Coinbase Pro and Mercatox
Stars: ✭ 50 (+61.29%)
Mutual labels:  coinbase, bittrex, binance
Crypto Rl
Deep Reinforcement Learning toolkit: record and replay cryptocurrency limit order book data & train a DDQN agent
Stars: ✭ 328 (+958.06%)
Mutual labels:  coinbase, bitfinex, trading
add-tradingview-alerts-tool
Automated entry of TradingView alerts for bot trading tools such as 3Commas, Alertatron, CryptoHopper, etc.
Stars: ✭ 467 (+1406.45%)
Mutual labels:  coinbase, kraken, binance

trading-indicator

npm version

provide trading technical indicator values based on market data of almost crypto currency exchanges https://www.npmjs.com/package/trading-indicator

Installation

Node.js version 10 or later is required

npm install --save trading-indicator

Available Indicators

  • BB (Bollinger bands)
    • Parameters:
      • Bollinger bands period: integer
      • stdDev : integer
      • Input source: "open" | "high" | "low" | "close"
      • Exchange
      • Ticker
      • Interval
      • IsFuture exchange : true if future exchange (default is false, means that spot exchange)
    const bb = require('trading-indicator').bb
    let bbData = await bb(50, 2, "close", "binance", "BTC/USDT", "15m", true)
    console.log(bbData[bbData.length - 2])
  • EMA (Exponential Moving Average)
    • Parameters:
      • MA period: integer
      • Input source: "open" | "high" | "low" | "close"
      • Exchange
      • Ticker
      • Interval
      • IsFuture exchange : true if future exchange (default is false, means that spot exchange)
  const ema = require('trading-indicator').ema
  let emaData = await ema(8, "close", "binance", "BTC/USDT", "15m", true)
  console.log(emaData[emaData.length - 1])
  • IchimokuCloud
    • Parameters:
      • conversionPeriod: integer
      • basePeriod: integer
      • spanPeriod: integer
      • displacement: integer
      • Exchange
      • Ticker
      • Interval
      • IsFuture exchange : true if future exchange (default is false, means that spot exchange)
  const ichimokuCloud = require('trading-indicator').ichimokuCloud
  console.log(await ichimokuCloud(9, 26, 52, 26, 'binance', 'BTC/USDT', '1h', false))
  • MACD (Moving Average Convergence Divergence)
    • Parameters:
      • Fast period: integer
      • Slow period: integer
      • Signal period: integer
      • Input source: "open" | "high" | "low" | "close"
      • Exchange
      • Ticker
      • Interval
      • IsFuture exchange : true if future exchange (default is false, means that spot exchange)
    const ichimokuCloud = require('trading-indicator').ichimokuCloud
    console.log(await ichimokuCloud(9, 26, 52, 26, 'binance', 'BTC/USDT', '1h', false))
  • MFI
    • Parameters:
      • MFI period: integer
      • Exchange
      • Ticker
      • Interval
      • IsFuture exchange : true if future exchange (default is false, means that spot exchange)
   const mfi = require('trading-indicator').mfi
   console.log(await mfi(14, "binance", "BTC/USDT", "15m", true))
  • OBV
    • Parameters:
      • Exchange
      • Ticker
      • Interval
      • IsFuture exchange : true if future exchange (default is false, means that spot exchange)
   const obv = require('trading-indicator').obv
   console.log(await obv("binance", "BTC/USDT", "15m", true))
  • RSI
    • Parameters:
      • RSI period: integer
      • Input source: "open" | "high" | "low" | "close"
      • Exchange
      • Ticker
      • Interval
      • IsFuture exchange : true if future exchange (default is false, means that spot exchange)
   const rsi = require('trading-indicator').rsi
   console.log(await rsi(14, "close", "binance", "BTC/USDT", "15m", true))
  • SMA (Simple Moving Average)
    • Parameters:
      • MA period: integer
      • Input source: "open" | "high" | "low" | "close"
      • Exchange
      • Ticker
      • Interval
      • IsFuture exchange : true if future exchange (default is false, means that spot exchange)
  const sma = require('trading-indicator').sma
  let smaData = await sma(8, "close", "binance", "BTC/USDT", "15m", true)
  console.log(smaData[smaData.length - 1])
  • Stochastic RSI
    • Parameters:
      • kPeriod: integer
      • dPeriod: integer
      • rsiPeriod: integer
      • stochasticPeriod: integer
      • Input source: "open" | "high" | "low" | "close"
      • Exchange
      • Ticker
      • Interval
      • IsFuture exchange : true if future exchange (default is false, means that spot exchange)
   const stochasticRSI = require('trading-indicator').stochasticRSI
   console.log(await stochasticRSI(3, 3, 14, 14, "close", "binance", "BTC/USDT", "15m", true))
  • WMA (Weighted Moving Average)
    • Parameters:
      • MA period: integer
      • Input source: "open" | "high" | "low" | "close"
      • Exchange
      • Ticker
      • Interval
      • IsFuture exchange : true if future exchange (default is false, means that spot exchange)
  const wma = require('trading-indicator').wma
  let wmaData = await wma(8, "close", "binance", "BTC/USDT", "15m", true)
  console.log(wmaData[wmaData.length - 1])

Fetch ticker information

  • Parameter:
    • Exchange name
    • Symbol
    • IsFuture exchange
let ticker = await indicators.ticker("binance", symbol, true)

The structure of a ticker is as follows:

{
    'symbol':        string symbol of the market ('BTC/USD', 'ETH/BTC', ...)
    'info':        { the original non-modified unparsed reply from exchange API },
    'timestamp':     int (64-bit Unix Timestamp in milliseconds since Epoch 1 Jan 1970)
    'datetime':      ISO8601 datetime string with milliseconds
    'high':          float, // highest price
    'low':           float, // lowest price
    'bid':           float, // current best bid (buy) price
    'bidVolume':     float, // current best bid (buy) amount (may be missing or undefined)
    'ask':           float, // current best ask (sell) price
    'askVolume':     float, // current best ask (sell) amount (may be missing or undefined)
    'vwap':          float, // volume weighed average price
    'open':          float, // opening price
    'close':         float, // price of last trade (closing price for current period)
    'last':          float, // same as `close`, duplicated for convenience
    'previousClose': float, // closing price for the previous period
    'change':        float, // absolute change, `last - open`
    'percentage':    float, // relative change, `(change/open) * 100`
    'average':       float, // average price, `(last + open) / 2`
    'baseVolume':    float, // volume of base currency traded for last 24 hours
    'quoteVolume':   float, // volume of quote currency traded for last 24 hours
}

Available Alerts

  • Golden cross / Death cross

    • Parameter:

      • MA_FAST (should be 50)
      • MA_SLOW (should be 200)
      • Exchange name
      • Symbol
      • Interval
      • IsFuture exchange

      Sample code

        alerts = require('trading-indicator').alerts
        
        await alerts.goldenCross(50, 200, 'binance', 'BTC/USDT', '1h', false) 
        await alerts.deathCross(50, 200, 'binance', 'BTC/USDT', '1h', false) 
        
        // check both golden/death cross
        await alerts.maCross(50, 200, 'binance', 'BTC/USDT', '1h', false) // response  { goldenCross: false, deathCross: false }
      
  • RSI in overBought/overSold area

    • Parameter:

      • RSI Period
      • OverBoughtThreshold (75)
      • OverSoldThreshold (25)
      • Exchange name
      • Symbol
      • Interval
      • IsFuture exchange

      Sample code

        alerts = require('trading-indicator').alerts
              
        await alerts.rsiCheck(14, 75, 25, 'binance', 'BTC/USDT', '1h', false) 
        // Test RSIcheck
        // { overBought: false, overSold: false, rsiVal: 27.81 }
      
  • Price crosses SMA/EMA

    • Parameter:

      • MA Period
      • Exchange name
      • Symbol
      • Interval
      • IsFuture exchange

      Sample code

        alerts = require('trading-indicator').alerts
      
        await alerts.priceCrossSMA(14, 'binance', 'BTC/USDT', '1h', false) 
        //Test SMA cross
        // { cross: true, direction: 'up' }
      
      
        await alerts.priceCrossEMA(14, 'binance', 'BTC/USDT', '1h', false) 
        // Test EMA cross
        // { cross: true, direction: 'down' }
        
      

Supported exchanges

Supported interval

  • 1m : 1 minute
  • 5m: 5 minutes
  • 15m: 15 minutes
  • 30m: 30 minutes
  • 45m: 45 minutes
  • 1h : 1 hour
  • 2h : 2 hours
  • 4h : 4 hours
  • 1d : 1 day
  • 1w : 1 week
  • 1M : 1 month

Dependencies

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].