Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // I am using axios module in order to connect
- var axios = require('axios');
- var user = "5df3d044-7bd9-4d34-b6fc-841ae8bbae74";
- var password = "ca4af97f-2d15-4e10-a235-979c9d31bf09";
- //line below encodes both keys to base64
- var token = Buffer.from(user + ':' + password).toString('base64')
- var coindeal_balans_BTC;
- var coindeal_balans_PLN;
- var coindeal_balans_FTO;
- var coindeal_BTCPLN_BID;
- var coindeal_BTCPLN_ASK;
- var coindeal_FTOBTC_BID;
- var Yobit_balans_BTC;
- var Yobit_balans_FTO;
- var Yobit_FTOBTC_ASK;
- ////////////////YOBIT/////////////
- //////KLUCZE API//////
- yobit_klucz_api = 'CDAE42BEA94587D1122EDA09986051AF'
- yobit_klucz_sekret = 'ba4261d84cbd1ad782b861c0f3874793'
- ////PARY WALUTOWE////
- para_walutowa_GAME_PLN = 'GAME/PLN'
- para_walutowa_BTC_PLN = 'BTC/PLN'
- para_walutowa_BTC_USD = 'BTC/USD'
- //itd...
- ////POZOSTAŁE ZMIENNE///
- var cena
- var balans_PLN
- ///////REQUIRES///////to ma tutaj być dokładnie w tym miejscu nie ruszać tego bo się program zrypie
- //const fs = require('fs');
- 'use strict';
- const ccxt = require('ccxt');
- ///////////////////GLOWNY PROGRAM/////////////////////
- // FUNKCJE AXIOSA POBIERAJĄ DANE Z COINDEALA
- async function applyRequests() {
- var response = await axios({
- method: 'GET',
- url: 'https://apigateway.coindeal.com/api/v1/trading/balance',
- data: {
- },
- headers: {
- 'Authorization': 'Basic ' + token,
- },
- });
- coindeal_balans_PLN = (response.data[7].available);
- coindeal_balans_BTC = (response.data[0].available);
- coindeal_balans_FTO = (response.data[8].available);
- response = await axios({
- method: 'GET',
- url: 'https://apigateway.coindeal.com/api/v1/trading/balance',
- data: {
- },
- headers: {
- 'Authorization': 'Basic ' + token,
- },
- })
- response = await axios({
- method: 'GET',
- url: 'https://apigateway.coindeal.com/api/v1/public/orderbook/BTCPLN?limit=10000',
- data: {
- symbol: "BTCPLN",
- currencyPair: "0",
- message: "string",
- errors: {}
- },
- headers: {
- 'Authorization': 'Basic ' + token,
- },
- });
- coindeal_BTCPLN_BID = response.data.bid
- coindeal_BTCPLN_ASK = response.data.ask
- response = await axios({
- method: 'GET',
- url: 'https://apigateway.coindeal.com/api/v1/trading/balance',
- data: {
- },
- headers: {
- 'Authorization': 'Basic ' + token,
- },
- })
- response = await axios({
- method: 'GET',
- url: 'https://apigateway.coindeal.com/api/v1/public/orderbook/FTOBTC?limit=10000',
- data: {
- symbol: "FTOBTC",
- currencyPair: "0",
- message: "string",
- errors: {}
- },
- headers: {
- 'Authorization': 'Basic ' + token,
- },
- })
- coindeal_FTOBTC_BID = response.data.bid
- response = await sprawdz_cene(yobit_klucz_api, yobit_klucz_sekret, para_walutowa_BTC_USD);
- wyniki();
- }
- applyRequests();
- function wyniki() {
- //TUTAJ BĘDĄ SIĘ WYKONYWAĆ OBLICZENIA
- console.log(coindeal_balans_BTC);
- console.log(coindeal_balans_PLN);
- console.log(coindeal_balans_FTO);
- console.log(coindeal_BTCPLN_BID[0]);
- console.log(coindeal_BTCPLN_ASK[0]);
- console.log(coindeal_FTOBTC_BID[0]);
- console.log(Yobit_balans_BTC);
- console.log(Yobit_balans_FTO);
- console.log(Yobit_FTOBTC_ASK[1]);
- }
- //setInterval(function () {
- //dupa()
- //sprawdz_cene (yobit_klucz_api, yobit_klucz_sekret, para_walutowa_BTC_USD);
- //wyniki();
- //}, 1200);
- /////////////////FUNKCJE//////////////////////////
- ////ZBIERANIE DANYCH////
- async function sprawdz_cene(klucz_api, klucz_sekret, para_walutowa) {
- // let bitbay = new ccxt.bitbay ()
- //let bitbay = new ccxt.bitbay ({ verbose: true })
- //let bitbay = new ccxt.bitbay ()
- let yobit = new ccxt.yobit({
- apiKey: klucz_api,
- secret: klucz_sekret,
- })
- const exchangeId = 'yobit'
- , exchangeClass = ccxt[exchangeId]
- , exchange = new exchangeClass({
- 'apiKey': klucz_api,
- 'secret': klucz_sekret,
- 'timeout': 30000,
- 'enableRateLimit': true,
- })
- /* console.log (bitbay.id, await bitbay.loadMarkets ())
- console.log (bitbay.id, await bitbay.loadMarkets ())
- console.log (bitbay.id, await bitbay.loadMarkets ())
- */
- // console.log (bitbay.id, await bitbay.fetchOrderBook (bitbay.symbols[0]))
- // console.log (bitbay.id, await bitbay.fetchTicker (para_walutowa))
- // console.log (bitbay.id, await bitbay.fetchTrades (para_walutowa))
- // console.log (bitbay.id, await bitbay.fetchBalance ())
- balans = (yobit.id, await yobit.fetchBalance())
- //console.log (balans.free.FTO);
- Yobit_balans_BTC = balans.free.BTC
- Yobit_balans_FTO = balans.free.FTO
- yobit_FTOBTC = (yobit.id, await yobit.fetchOrderBook('FTO/BTC'))
- //console.log (dupa2.asks);
- Yobit_FTOBTC_ASK = (yobit_FTOBTC.asks)
- //cena= (yobit.id, await yobit.fetchTicker (para_walutowa))
- //console.log (cena)
- //console.log (Yobit_FTOBTC_ASK);
- // sell 1 BTC/USD for market price, sell a bitcoin for dollars immediately
- // console.log (bitbay.id, await bitbay.createMarketSellOrder (para_walutowa, 1))
- // buy 1 BTC/USD for $2500, you pay $2500 and receive ฿1 when the order is closed
- //TA FUNKCJA DZIALA NA BITBAYU, STANDARDOWA TRANSAKCJA
- // console.log (bitbay.id, await bitbay.createLimitSellOrder (para_walutowa, amount, price))
- /*
- // pass/redefine custom exchange-specific order params: type, amount, price or whatever
- // use a custom order type
- bitbay.createLimitSellOrder (para_walutowa, 1, 10, { 'type': 'trailing-stop' })*/
- };
- //////TRANSFER/////
- async function transfer(klucz_api, klucz_sekret, amount, portfel_biorca) {
- // let bitbay = new ccxt.bitbay ()
- //let bitbay = new ccxt.bitbay ({ verbose: true })
- //let bitbay = new ccxt.bitbay ()
- let bitbay = new ccxt.bitbay({
- apiKey: klucz_api,
- secret: klucz_sekret,
- })
- const exchangeId = 'bitbay'
- , exchangeClass = ccxt[exchangeId]
- , exchange = new exchangeClass({
- 'apiKey': klucz_api,
- 'secret': klucz_sekret,
- 'timeout': 30000,
- 'enableRateLimit': true,
- })
- exchange.withdraw(code, amount, portfel_biorca, tag = undefined, params = {})
- };
- //////////HANDEL/////////
- async function sell(klucz_api, klucz_sekret, para_walutowa, amount, price) {
- // let bitbay = new ccxt.bitbay ()
- //let bitbay = new ccxt.bitbay ({ verbose: true })
- //let bitbay = new ccxt.bitbay ()
- let bitbay = new ccxt.bitbay({
- apiKey: klucz_api,
- secret: klucz_sekret,
- })
- const exchangeId = 'bitbay'
- , exchangeClass = ccxt[exchangeId]
- , exchange = new exchangeClass({
- 'apiKey': klucz_api,
- 'secret': klucz_sekret,
- 'timeout': 30000,
- 'enableRateLimit': true,
- })
- //STANDARDOWA TRANSAKCJA TA FUNKCJA DZIALA NP NA BITBAYU, MA BYĆ JAKO CONSOLE.LOG
- console.log(bitbay.id, await bitbay.createLimitSellOrder(para_walutowa, amount, price))
- /*
- ////INNE SPECJALNE FUNKCJE DO SPRZEDAZY
- //use a custom order type
- bitbay.createLimitSellOrder (para_walutowa, 1, 10, { 'type': 'trailing-stop' })
- //sell 1 BTC/USD for market price, sell a bitcoin for dollars immediately
- console.log (bitbay.id, await bitbay.createMarketSellOrder (para_walutowa, 1))
- */
- };
- async function buy(klucz_api, klucz_sekret, para_walutowa, amount, price) {
- // let bitbay = new ccxt.bitbay ()
- //let bitbay = new ccxt.bitbay ({ verbose: true })
- //let bitbay = new ccxt.bitbay ()
- let bitbay = new ccxt.bitbay({
- apiKey: klucz_api,
- secret: klucz_sekret,
- })
- const exchangeId = 'bitbay'
- , exchangeClass = ccxt[exchangeId]
- , exchange = new exchangeClass({
- 'apiKey': klucz_api,
- 'secret': klucz_sekret,
- 'timeout': 30000,
- 'enableRateLimit': true,
- })
- //STANDARDOWA TRANSAKCJA TA FUNKCJA DZIALA NP NA BITBAYU
- console.log(bitbay.id, await bitbay.createLimitBuyOrder(para_walutowa, amount, price))
- /*
- ////INNE SPECJALNE FUNKCJE DO KUPOWANIA
- //use a custom order type
- bitbay.createLimitBuyOrder (para_walutowa, 1, 10, { 'type': 'trailing-stop' })
- //sell 1 BTC/USD for market price, sell a bitcoin for dollars immediately
- console.log (bitbay.id, await bitbay.createMarketBuyOrder (para_walutowa, 1))
- */
- };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement