KirillBelov/ WAEXLink

(1.0.1) current version: 1.0.10 »

Wolfram Language client for WAEX API

Contributed by: Kirill Belov

Wolfram Language client to Wolfram Cryptocurrency Database.

Installation Instructions

To install this paclet in your Wolfram Language environment, evaluate this code:
PacletInstall["KirillBelov/WAEXLink"]


To load the code after installation, evaluate this code:
Needs["KirillBelov`WAEXLink`"]

Details

You must save your API token to environment variable "WAEX_API_TOKEN".

Examples

Basic Examples

Get list of crypto exchanges:

In[1]:=
exchages = WAEXExchanges["limit" -> 2]
Out[1]=

List of markets:

In[2]:=
markets = WAEXMarkets["limit" -> 2]
Out[2]=

Token:

In[3]:=
tokens = WAEXTokens["limit" -> 2]
Out[3]=

Order book:

In[4]:=
orderBook = WAEXOrderBooks["BTC/USDT", "exchangeNames" -> "Binance", "rangeDateStart" -> DateObject[{2024, 12, 16}], "rangeDateEnd" -> DateObject[{2024, 12, 19}]
  ]
Out[4]=
In[5]:=
<< KirillBelov`WebSocketLink`
In[6]:=
ShowJavaConsole[]
Out[6]=
In[7]:=
connection = WebSocketConnect["wss://access.ccdb.waexservices.com/", "HTTPHeaders" -> <|
    "Cookie" -> "ccdb.sid=s%3A4l2i9gjX5y1Yug4WbOn9gNLvDhoU2QpQ.U0hrGavq2hWPvRmazqjisoJTGrPLdGo7pkRK4I9bV9c", "csrf_token" -> "9TPwgpzJ"
    |>
  ]
Out[7]=
In[8]:=
response = URLRead[HTTPRequest[
   "https://access.ccdb.waexservices.com/api/v1/auth/local", <|
    Method -> "POST", "ContentType" -> "application/json", "Body" -> ExportString[<|
       "login" -> "kirillbelovtest@gmail.com", "password" -> "1234asdf"
       |>, "RawJSON"]
    |>
   ], CookieFunction -> Print]
Out[8]=
In[9]:=
cookie = URLDecode[response["Cookies"][[1, "Content"]]]
Out[9]=
In[10]:=
csrfToken = ImportString[response["Body"], "RawJSON"]["meta", "csrfToken"]
Out[10]=
In[11]:=
response["Headers"]
Out[11]=
In[12]:=
headers = <|
  "Sec-WebSocket-Version" -> "13", "Sec-WebSocket-Key" -> BaseEncode[ByteArray[RandomInteger[{0, 255}, 16]], "Base64"], "Connection" -> "Upgrade", "Upgrade" -> "websocket", "Cookie" -> cookie, "csrf_token" -> csrfToken,
  "Sec-WebSocket-Extensions" -> "permessage-deflate; client_max_window_bits", "Host" -> "access.ccdb.waexservices.com", "access_token" -> SystemCredential["WAEX_API_TOKEN"]
  |>
Out[12]=
In[13]:=
connection = WebSocketConnect["ws://access.ccdb.waexservices.com", "HTTPHeaders" -> headers
  ]
Out[13]=
In[14]:=
response = URLRead[HTTPRequest["access.ccdb.waexservices.com:80", <|
    "Headers" -> headers
    |>
   ]]
In[15]:=
response["Body"]

Publisher

Kirill Belov

Disclosures

Compatibility

Wolfram Language Version 14

Version History

  • 1.0.10 – 03 April 2025
  • 1.0.9 – 26 March 2025
  • 1.0.8 – 21 March 2025
  • 1.0.7 – 21 March 2025
  • 1.0.6 – 20 March 2025
  • 1.0.5 – 19 March 2025
  • 1.0.4 – 19 March 2025
  • 1.0.3 – 14 March 2025
  • 1.0.2 – 14 March 2025
  • 1.0.1 – 11 March 2025
  • 1.0.0 – 19 December 2024

License Information

MIT License

Paclet Source