roq-gemini

$ conda install \
      --channel https://roq-trading.com/conda/unstable \
      roq-gemini
$ conda install \
      --channel https://roq-trading.com/conda/stable \
      roq-gemini

Supports

Products

Spot

Futures

Swap

Option

Orders & Quotes
Account

Funds

Position

Note

✅ = Available.

❎ = Not implemented.

❌ = Unavailable.

Using

$ roq-gemini [FLAGS]

Flags

$ roq-gemini --help
--exchange (gemini)

Exchange identifier

--fix_mkt_uri (tcp://3.220.21.165:1514)

Exchange end-point

--fix_mkt_ping_freq (30s)

Ping frequency

--fix_mkt_request_timeout (15s)

Request timeout

--fix_mkt_debug (false)

(DEBUG) Log fix messages?

--fix_ord_uri (tcp://3.220.21.165:1514)

Exchange end-point

--fix_ord_ping_freq (30s)

Ping frequency

--fix_ord_cancel_on_disconnect (true)

Cancel orders on disconnect?

--fix_ord_debug (false)

(DEBUG) Log fix messages?

--fix_drp_uri (tcp://3.220.21.165:1514)

Exchange end-point

--fix_drp_ping_freq (30s)

Ping frequency

--fix_drp_debug (false)

(DEBUG) Log fix messages?

--rest_uri (https://api.sandbox.gemini.com/v1)

Exchange end-point

--rest_ping_freq (30s)

Ping frequency

--rest_rate_limit_interval (60s)

Rate limit monitor interval

--rest_rate_limit_max_requests (600)

Rate limit max requests (per interval)

--encode_buffer_size (1048576)

Encode buffer size

--decode_buffer_size (10485760)

Decode buffer size

--mbp_allow_price_inversion (true)

Allow price inversion?

Environments

Configuration

$ --config_file $CONDA_PREFIX/share/roq-gemini/config.toml

Important

This template will be replaced when the software is upgraded. Make a copy and modify to your own needs.

# config template for the roq-gemini gateway

symbols = ".*"

[order_entry]
  sender = "YOUR_GEMINI_ORDER_ENTRY_SENDER_GOES_HERE"
  target = "YOUR_GEMINI_ORDER_ENTRY_TARGET_GOES_HERE"

[market_data]
  sender = "YOUR_GEMINI_MARKET_DATA_SENDER_GOES_HERE"
  target = "YOUR_GEMINI_MARKET_DATA_TARGET_GOES_HERE"

[drop_copy]
  sender = "YOUR_GEMINI_DROP_COPY_SENDER_GOES_HERE"
  target = "YOUR_GEMINI_DROP_COPY_TARGET_GOES_HERE"

[accounts]

  [accounts.A1]
  master = true
  symbols = ".*"

[users]

  [users.test]
  password = "1234"
  symbols = ".*"

  [users.trader]
  password = "secret"
  accounts = [ "A1" ]
  symbols = [ ".*BTC.*", ".*ETH.*" ]

[rate_limits]

  [rate_limits.global]
    type = "ORDER_ACTION"
    aggregate = true
    request_limit = 100
    monitor_period = "10s"
    ban_period = "5m"

Market Data

Order Management

Order Types

Type

Comments

MARKET

Mapped to '1' (FIX)

LIMIT

Mapped to '2' (FIX)

STOP_LIMIT

Mapped to '4' (FIX)

Time in Force

Type

Comments

GTC

Mapped to '1' (FIX)

IOC

Mapped to '3' (FIX)

FOK

Mapped to '4' (FIX)

AT_THE_CLOSE

Mapped to '7' (FIX)

Position Effect

Note

Not supported

Execution Instructions

Type

Comments

PARTICIPATE_DO_NOT_INITIATE

Mapped to '6' (FIX)

Comments

  • FIX supports both order management and market data.

  • Support for reference data and market status is completely missing from all API interfaces. YOU SHOULD NOT RELY ON REFERENCE DATA AND MARKET STATUS FOR ANYTHING.

  • REST

    • Not implemented.

  • ReferenceData, MarketStatus

    • You should not rely on these feeds.

References

Common

Exchange