# Futu OpenAPI Introduction

# Overview

Futu OpenAPI provides wide varieties of market data and trading services for your programmed trading to meet the needs of every developer's programmed trading and help your Quant dreams.

  • Futubull user
  • Moomoo user

Futubull users can click here (opens new window) to learn more.

Futu OpenAPI consists of FutuOpenD and Futu API:

  • FutuOpenD is the gateway program of Futu API, running on your local computer or cloud server. It is responsible for transferring the protocol requests to Futu Server, and returning the processed data.
  • Futu API is an API SDK encapsulated by Futu, including mainstream programming languages (Python, Java, C#, C++, JavaScript), to reduce the difficulty of your trading strategy development. If the language you want to use is not listed above, you can still interface with the protocol yourself to complete the trading strategy development.

The following are communication architecture diagrams of Futu OpenAPI.

openapi-frame

openapi-interactive

The first time using Futu OpenAPI, you need to finish the following two steps:

The first step is to install and start a gateway program FutuOpenD locally or in the cloud.

FutuOpenD exposes the interfaces in the way of TCP, which is responsible for transferring the protocol requests to Futu Server and returning the processed data. The protocol interface has nothing to do with the type of programming language.

The second step is to download Futu API and complete Environment Setup.

For your convenience, Futu encapsulates API SDK for mainstream programming languages (hereinafter referred to as Futu API).

# Account

Futu OpenAPI involves two types of accounts, Futu ID and trading account.

# Futu ID

Futu ID is your user account (including Futubull ID and moomoo ID), which can be used in Futubull APP, moomoo APP and Futu OpenAPI.
You can use your Futu ID and login password to log in to FutuOpenD and obtain market data.

# Trading Account

The trading account is your securities account , which is available after opening securities accounts of Futu. It is mainly used for depositint, withdrawing, margin trading and short selling all kinds of financial instruments.
Trading account involves HK trading account, US trading account, A-share market trading account, futures trading account:

  • HK trading account is used for trading HK market securities and options.
  • US trading account is used for trading US market stocks, ETFs and options.
  • A-share market trading account is used for trading HKCC stocks.
  • Futures trading account is used for trading futures in the global market and currently supports HKFE futures, CME Group futures, SGX futures, OSE futures.

Tips

Under one Futu ID, you can open trading accounts from different securities firms. That is, under one Futubull / moomoo ID, there might be several trading accounts.

# Functionality

There are 2 functions of Futu OpenAPI: quotation and trading.

# Quotation Functions

# Quotation Data Categories

Including stocks, indices, options and futures from HK, US and A-share market. Find the specific types of support in the table below. You need authorities for each kinds of market data. For more details on how to obtain authorities, please click here.

Market Contract Futubull Users Moomoo Users
HK Market Securities
Options
Futures X
Indices
Plates
US Market Securities
OTC Securities X X
Options
Futures X X
Indices X X
Plates
A-share Market Securities
Indices
Plates
Singapore Market Securities
X X
Futures X X
Japanese Market Futures X X

# Method to Obtain Market Data

  • Subscribe and receive pushed real-time quote, candlestick, tick-by-tick and order book.
  • Request for the latest market snapshot, historical candlesticks etc.

# Trading Functions

# Trading Capacity

Including stocks, options and futures from HK, US, A-share, Singapore and Japanese markets. Find the specific types of support in the table below:

Market Contracts Paper Trading Live Trading
FUTU HK FUTU US FUTU SG
HK Market Securities
Options X X
Futures X X X
US Market Securities
Options
Futures X X
A-share Market HKCC stocks
Non-HKCC stocks X X X
Singapore Market Securities
X X X X
Futures X X
Japanese Market Futures X X X

# Method of Trading

The trading interfaces are used for both live trading and paper trading.

# Features

  1. Full platform and multi-language
  • FutuOpenD supports Windows, MacOS, CentOS, Ubuntu
  • Futu API supports Python, Java, C#, C++, JavaScript, etc.
  1. Stable speed and free
  • Stable technical architecture, directly connected to the exchanges
  • The fastest order is 0.0014s
  • There is no additional charge for trading via Futu OpenAPI
  1. Abundant investment varieties
  • Support real-time quote, live trading, and paper trading in HK, US, and CN markets
  1. Professional institutional services
  • Customized market data and trading solutions