Version 2.6.12

Released 2021-03-17

Add the support of market order in huobi

Fix orderback double orders

Fix binance market order

Fix missing dependency on Huobi Add support of market order on Huobi Add support of market order on Binance

Version 2.6.11

Released 2021-03-10

Fix: Binance exchange now support tickSize param in PRICE_FILTER filter

Version 2.6.10

Released 2021-03-02

Feature: balance percentage plugin (#190)

  • Feature: Add limit by balance ratio on copy strategy
  • Fix: Add unit tests
  • Feature: Add limit_balance plugin for copy and orderback strategy

Co-authored-by: Camille Meulien <cmeulien@heliostech.fr> Co-authored-by: Jeng <jeng@yellow.com>

Version 2.6.9

Released 2021-03-01

Increase default timeout to 10s on opendax and finex

Version 2.6.8

Released 2021-02-26

Binance: improve error in case of missing market

Version 2.6.7

Released 2021-02-25

Fix finex trying to cancel already canceled orders in loop

Version 2.6.6

Released 2021-02-25

Add the support of bulk_stop_order in finex and use it in circuit braker strategy

Feature: Add Binance orderbook websocket support

Fix: missing queue_id for Circuitbraker

Version 2.6.5

Released 2021-01-15

Feature: Add orderback_type by market as default

Version 2.6.4

Released 2021-01-15

Ability to configure levels_step function on all strategies

New strategy: simple-copy with orderbook generator (#163)

  • New strategy: simple-copy with orderbook generator

  • Add command to display account informations:

./bin/arke show infos
  • Fix on Smart scheduler: Apply fast track on cancel order when low liquidity flag is raised

  • Handle the SIGTERM and stop arke

Version 2.6.3

Released 2021-01-13

Fix: Valr create order missing pair

Version 2.6.2

Released 2020-12-23

Fix continuous integration pipeline

Fix valr market configuration

Version 2.6.1

Released 2020-12-22

Enhancement: Update sdk-citools version for Drone CI (#166)

Version 2.6.0

Released 2020-12-15

Update dependencies

Version 2.4.7

Released 2020-12-15

Ability to pass the strategy config in STDIN

Add VALR exchange support

Add drivers opendax and finex Deprecates rubykube driver

Add Candle Sampling strategy (#154)

  • Add Candle Sampling strategy
  • Bump master version to 2.6

Candle sampling v2 (#155)

  • Make the trade side depends on the price trend
  • Add max_balance param to candle-sampling strategy
  • Use the weighted volume of trades of the last time window

Fix: no order in target orderbook

Update dependencies

Use finex markets config endpoint

Version 2.4.6

Released 2020-11-23

Bump master version to 2.5

Clean dependencies

Version 2.4.5

Released 2020-04-30

Switch nonce in millisecond timestamp for Openware peatio

Version 2.4.4

Released 2020-04-13

Clean README

Fix typo in logging message

Ignore pong messages in rubykube driver

Version 2.4.3

Released 2020-03-23

Merge remote-tracking branch 'origin/master' into HEAD

Update for latest finex

Version 2.4.2

Released 2020-03-20

Raise an error if arke tries to cancel an order with unknown id with openware/peatio target (#135)

Version 2.4.1

Released 2020-03-20

Version 2.4.0

Released 2020-03-20

Ability to apply a static forex change to strategies prices output

Add the support of pagination in fetch orders for openware/peatio 2.4

Add finex balances events support

Add Finex order API

Add finex support (#134)

  • Add finex support to rubykube exchange type

Add the command arke order to the cli to send order to an exchange Fix bitfinex order type to avoid error "Invalid order: not enough tradable balance"

Bump to 2.4.0

Cleanup: remove rails dependency and unused code Removed ETL

Cleanup bitfinex websocket connection

Code refactoring

  • Fix spread calculation on the order back price
  • Fix Bitfinex auto configuration
  • Centralize the market precision application inside order model
  • Improve test coverage of the order back strategy
  • Apply market rules (precision and min amount) to orders made from cli
  • Binance: round up orders amount using the min national rule for small amount

Deprecate configuration market.id in favor of market_id (#116)

  • Deprecate configuration market.id in favor of market_id

Do not rescue error on strategy initialization

Dynamically fetch forex rates

Enhauncement: update sdk version (#124)

FX support in order back

Feature: Start strategies document for fast copy (#133)

  • Feature: Start strategies document for fast copy

  • Fix: add space in comment, fix typo

  • Feature: Add one strategy example per strategy

Fix: fetch open orders up to 1000 if the header Total is missing

Fix levels_count can be 1

Fix: For Huobi exchange, force to parse response as JSON

Fix microtrade-copy strategy to receive trades from multiple markets

Fix: Apply orderback requirements after the amount check

Fix: Update the missing account error message

Fix loop of order cancels (#129)

  • Fix loop of order cancels when we miss the confirmation from the websocket

Fix a bug on microtrade strategy random amount

Fix microtrade strategy precision

Fix order precision issue

Fix auto configuration of base and quote currencies for bitfinex markets

Fix: Tickers WS message (#110)

Huobi public websocket support

Kraken: consider balance total amount is free since we don't have the information about balance locked amounts

Kraken ws unify

Markets configuration is now automatic it fetches it through the API of every exchange

New strategy for drawing candlestick: Microtrade-Copy

  • Supports multiple sources (binance and bitfinex supported)
  • Support forex rate applied to the source
  • Notice: the legacy microtrade strategy is renamed to Microtrade-Market

Add the support of incremental orderbook to rubykube

Openware exchange: Reduce the ping delay to 53 seconds

Option to enable/disable https in dynamic forex module

Raise explicit error when driver is undefined

Support of peatio 2.3 in orderback strategy Fix a problem in orderback when the id of source and target markets are not the same Change the default orderback_grace_time to 1 second

Version 2.3.30

Released 2020-03-13

Enhauncement: update sdk version (#125)

Fix: For Huobi exchange, force to parse response as JSON

Version 2.3.29

Released 2019-11-29

Add Websockets for k-line and tickers

Add circuitbraker strategy

Add volume to cache gems in drone pipeline

Changed smart scheduler priorities to balance the liquidity and do less changes Add documentation about max_amount_per_order new parameter

Enhancement: Update sdk image

Feature: add docs generated and slack notifying step (#104)

Feature: Add a CI step to push images to Openware Registry (#105)

  • Deprecate the second GCR CI push

Feature: Introduce Smart Scheduler (#99)

Change default scheduler to SmartScheduler Actions are prioritized in the following groups: 1- if any existing orders are behonds desired orderbook limits they are canceled in top priority 2- adjust levels liquidity, levels with biggest difference of liquidity between desired and current orderbook goes first 3- finally we cancel orders that are behonds the price points (far in the orderbook)

If we are short in liquidity (more than 120% of limit specified in orderbook), the priority of canceling group 3 becomes higher than group 2 actions until enough liquidity is available or no more orders are in group 3.

Technical changes: - Implement lazy logger to improve performances - Introduce PricePoint model (TODO: to use everywhere) - Use BigDecimal in orderbook

Feature: Update the CI to use SDK for version bumps (#100)

Fix stable drone build

Fix: Respect the account delay between API calls of the same strategy

Fix: apply spread on price proints

Fix: Action Executor create one queue per strategy to make quaranty action of each strategy will be executed

Fix rubykube exchange raise error in fetch_openorders when server is not accessible

Fix command show balances: skip missconfigured accounts Fix keepalive websocket connection with rubykube exchanges

Implement lazy logger to improve performances

Prepare 2.3 stable release

  • Add tests for copy strategy
    • Removed strategy1 legacy
    • Moved fixtures files to standard rails conventions
    • Minor logs improvements

Version 2.3.28

Released 2019-11-13

Add documentation to Understand the copy or orderback target orderbook

Version 2.3.27

Released 2019-11-11

Feature: Fetch open orders after all actions with delay

Version 2.3.26

Released 2019-11-07

Fix: Ensure ActionExecutor scheduler timer is setup only once

Version 2.3.25

Released 2019-11-04

ETL: Generic AMQP extract and load (#93)

  • ETL: Generic AMQP extract and load to forward a specific list of events from one exchange to another

  • ETL: Add the support of start method on load classes

Version 2.3.24

Released 2019-11-01

Fix: apply spread for copy, update balances before running strategies… (#96)

  • Fix: apply spread for copy, update balances before running strategies, allow to seed balance

  • Fix: fake_balances to forced_balances

Version 2.3.23

Released 2019-10-31

Fix: support transform for several loads (#94)

Version 2.3.22

Released 2019-10-30

Feature: Add public endpoints for k-line, tickers and trades

Version 2.3.21

Released 2019-10-28

Feature: ETL Framework to be configured by etl.yml (#87)

Version 2.3.20

Released 2019-10-25

Adding troubleshooting guide

Version 2.3.19

Released 2019-10-24

Implemented vault rails and fixed controllers specs (#88)

Version 2.3.18

Released 2019-10-23

Version 2.3.17

Released 2019-10-23

Feature: Publish Arke to gitolite (#90)

Version 2.3.16

Released 2019-10-23

Recorder (#85)

  • First version of Recorder
  • Introduce Flags to enable features on need for markets and exchanges / accounts

Version 2.3.15

Released 2019-10-21

Improve influx usability (#83)

Version 2.3.14

Released 2019-10-20

Feature: Publish Arke to gitolite

InfluxDB integration with schema and examples

Version 2.3.13

Released 2019-10-14

Add tests and fixes Add init checks for microtrades and fixedprice strategies

Changed aggregation logic - Makes sure we have always the expected number of orders - Provides the min amount information to orderbook aggregate method

TODO: Assert min_ask_amount and min_bid_amount parameters are set for the target exchange (we can create them by fetching peatio markets config)

Fix Fixedprice orders amount

Fix commands arke show balances,deposit_addresses

Introduce Market class - Market stores strategies markets infos, including orderbooks

Split mocked context and remove duplicates

Rubykube websocket reconnection mechanism - Disable the strategy until the websocket is connected - Disable linked strategies until the websocket is connected

Use linear repartition of volume in fixedprice strategy Add config checks in market

Version 2.3.12

Released 2019-10-09

Migration to Rails 6 (#75)

Version 2.3.11

Released 2019-10-08

Fix: update orderbook method for kraken/hitbtc/luno/okex

Version 2.3.10

Released 2019-10-04

Feature: update ruby to version 2.6.5

Version 2.3.9

Released 2019-10-01

Feature: rename 'strategy1' to 'orderback' (#70)

  • Feature: rename 'strategy1' to 'orderback'

  • Feature: move orderback function to orderback strategy

  • Feature: move params for orderback to orderback strategy

  • Feature: update documentation and add some tests for min order back amount

Version 2.3.8

Released 2019-09-30

Update documentation for arke (#69)

  • Update documentation for arke

Version 2.3.7

Released 2019-09-25

Prevent orders to overlap with exact same price when scheduling orders refresh

Schedule refuse to create a wrong orderbook

Simplify the orderbook update by recreating orders with the exact same price

Version 2.3.6

Released 2019-09-24

Prevent orders to overlap when scheduling orders refresh

Version 2.3.5

Released 2019-09-23

Fix: microtrades strategy

Version 2.3.4

Released 2019-09-17

Fix: check trade market before orderback (#64)

  • Fix: check trade market before orderback

Version 2.3.3

Released 2019-09-17

Limit amount of microtrades to 60% of linked strategy open orders volume

  • Feature: limit amount of microtrades to 60% of linked strategy open orders volume

Version 2.3.2

Released 2019-09-06

Feature: Add quay.io push step to drone

Pull Requests

Merge pull request #62 from openware/feature/push_quay

Version 2.3.1

Released 2019-09-04

Ability to load configuration from YAML files

Accounts API

  • Add service for managing apikeys
    • Update account model

Add a rubocop config

Add CRUD for strategies

Add exchanges URLs

Add db:seeds task loading data from seeds.yml

Adding drone bump system

Adding Strategies

Adding Markets

rails g scaffold market exchange:references name:string base:string quote:string base_precision:integer quote_precision:integer state:string

Adding user table

Adding rspec

Compacting database and import task

Copy arke library

Factories for User example with spec

Fix: disable developer seeds and update gems

GET APIs for trades, balances, exchanges, markets, tickers

Improve Action Executor exceptions handling

Integrate JWT authenticator (#44)

  • Integrate JWT authenticator

  • Ability to get current user

Load strategies from db

Market tickers

Microtrades cancel orders after 100ms to act as a stupid fill or kill order type (fok) Stores order id in Order class

rails g scaffold balance credential:references currency:string amount:decimal available:decimal locked:decimal

rails g scaffold credential user:references exchange:references name:string

rails g scaffold exchange name:string url:string rest:string ws:string rate:decimal

rails new --api --skip-test --skip-system-test --database=mysql arke

Removing commands and fixing lib/arke specs

Rename credentials to accounts

Strategy worker

Trade model

Updating with latest master

commit 045fb6e2d8df47d04f2f0d9301043f9d26688fdb Fri Aug 30 15:26:44 2019

Feature: allow microtrades only on one side, configurable price difference

Updating seeds markets

Updating schema

Using robox:1.0.1