블록체인 자산의 양적 거래의 발달로, 점점 더 많은 블록체인 자산 거래자가 양적 거래의 도구를 인식하고 있습니다. 하지만 이 서클의 새로운 멤버로서, 당신은 많은 개념에 대해 매우 혼란스럽고, 다양한 용어, 소프트웨어, 정보 등에 의해 혼란스러워합니다. 이 기사는 일반적인 개념들을 이해하고 친숙하게 할 것이며, 다양한 측면에서 블록체인 자산의 양적 거래에서 다양한 유용한 정보를 이해하게 될 것입니다. 이 문서에서는 먼저 기본 개념을 요약하고, 다음에는 이러한 기본 개념에 대응하는 FMZ 퀀트 트레이딩 플랫폼에 대한 예를 제공합니다.
우선, 우리는 플랫폼의 개념을 이해해야합니다. 우리는 플랫폼에서 우리 손에있는 블록체인 자산에 대해 추측하고 투자해야합니다. 현재 많은 플랫폼이 있습니다. 시니어, 신흥, 대규모 및 소규모. 프로그래밍 및 양적 거래를 수행하는 플랫폼에 대해서는 다양한 정보를 기반으로 스스로 선택해야합니다.
플랫폼 계정 플랫폼 계정 (platform account) 은 플랫폼에 등록 및 개설된 계정이다. 블록체인 자산은 거래를 위해 이 계정에 저장될 수 있다. 일부 플랫폼 계정은 생성 및 설정할 수 있다.부계산주요 계정 아래에서 별도의 거래 및 자산 투기를 촉진합니다. 각 플랫폼의 응용, 메커니즘 및 하위 계정의 사용은 다릅니다. 특정 플랫폼 웹 사이트의 정보를 확인해야합니다. 또는 플랫폼 고객 서비스를 문의하십시오.
플랫폼 웹 사이트에서 계정으로 로그인 한 후, 일반적으로 블록체인 자산을 저장할 수있는 장소가 여러 개의
플랫폼 시스템 API 플랫폼의 기능을 사용하지 않은 많은 학생들이 질문할 수 있습니다. API 인터페이스는 프로그램 운영을 허용하는 플랫폼 시스템에서 제공하는 인터페이스입니다. 간단히 말해서, 거래소는 플랫폼 시스템 (플랫폼 웹 사이트에서 특정 거래 쌍 시장을 상상하십시오) 의 프로그램 (보트 스크립트) 에 주문을 주고, 주문을 취소하고, 주문을 확인하고, 계정 자산 및 위치, 그리고 플랫폼 시스템에서 다른 작업을 수행 할 수있는 채널을 제공합니다.
플랫폼 API는 다양한 유형의 인터페이스로 나REST
프로토콜 인터페이스 및WebSocket
프로토콜 인터페이스. 몇 가지 플랫폼은 또한FIX
프로토콜 인터페이스. 우리는 단지 그 인터페이스에 대한 이해가 필요합니다. 가장 일반적으로 사용되는 인터페이스는 REST 프로토콜입니다. 이러한 인터페이스의 문서는 일반적으로 단어와 링크에서 찾을 수 있습니다.API이러한 플랫폼의 공식 웹 사이트의 하단에 있습니다. 때로는 일부 인터페이스 오류 정보를 검색하려면 인터페이스 문서를 확인해야합니다. 각 플랫폼의 API 시스템은 다르며 차이점은 상대적으로 크습니다. 특정 문제에 대해서는 문서를 확인해야합니다. 전략 개발자가 아닌 경우, 이것들은 이해를위한 것입니다.
계정의 API 키 계정 API KEY는 당신이 사용하는 플랫폼에 저장된 블록체인 자산의 보안과 관련이 있기 때문에 신중하게 이해해야합니다. API 인터페이스가 채널이라고 하면 API KEY는통과채널의. 액세스 채널이있는 경우, 모든 프로그램이 액세스 할 수 없습니다. 위험하기 때문입니다. 따라서 검증이 필요합니다. API 키는 신원을 확인하는 데 사용됩니다. 따라서 API 키는 자산의 보안과 관련이 있으므로 올바르게 보관해야합니다.
일반적으로 플랫폼의 APIKEY는 계정 관리 페이지의 오른쪽 상단에 생성됩니다. (웹 페이지의 다른 곳에 배치하는 플랫폼도있을 수 있습니다.access key
, 그리고 두 번째 문자열은 보통secret key
. 또한 API KEY가 다른 정보를 가지고 있는 플랫폼도 있습니다. 예를 들어, OKEX V5와 V3 인터페이스도PassPhrase
, 또한 하나의 문자열 (보안 검증을 강화하기 위해 스스로 설정해야 하는 문자열) 입니다.
API KEY를 설정할 때, 일반적으로 이 API KEY의 권한을 설정하는 것이 필요하다. 일반적으로,
교환 대상
교환 대상의 개념은 FMZ 양자 거래 플랫폼 (FMZ.COM) 간단히 말해서, 플랫폼 인터페이스의 캡슐화로 생성되는 객체를 의미합니다.
이 객체는 FMZ 전략 코드에서
전략이 선물 거래소 객체를 운영하는 경우 선물을 추가하고 스팟 교환 객체를 운영하고 싶다면 스팟을 추가합니다. 이러한 디자인의 이유는 플랫폼이 완전히 다른 선물과 스팟 인터페이스, 심지어 다른 인터페이스 기본 주소를 가질 수 있기 때문에 분리되어 있습니다.
FMZ 플랫폼에서,
여기서 언급된 거래 시장은 특정 거래 시장 상황을 가리킨다 (거래 페이지라고 상상해 보세요), 일반적으로 여러 모듈에서 거래됩니다. 예를 들어:통화 거래, 현장 마진 거래, 계약 거래, 등등
거래 쌍
보통 우리가 "거래 쌍"이라고 말하는 것은 우리가 시장에 갈 때 잎겨드랑이를 사거나 파는 것을 의미합니다.
스팟통화 거래그리고현장 마진 거래즉석 거래로 분류됩니다. 즉석 거래는거래 쌍어떤 시장에서 거래되는지 설명합니다.
예를 들어, FMZ Quant에서 BTC를 USDT로 교환하는 거래 쌍을 만들고 싶다면 거래 화폐는 BTC이고 코팅 화폐는 USDT입니다.
우리는 함수를 사용합니다exchange.SetCurrency("BTC_USDT")
FMZ 플랫폼에서exchange.SetCurrency("BTC_USDT")
현재 거래 쌍을BTC_USDT
.
이해가 안 되는 학생들SetCurrency
, 당신은 참조할 수 있습니다:https://www.fmz.com/api#exchange.setcurrency...
이해가 안 되는 학생들exchange
, 당신은 참조할 수 있습니다:https://www.fmz.com/api#exchange.
계약 (미래상과 옵션)
계약 거래는 스팟 거래와 매우 다릅니다. 현재 플랫폼 계약은crypto-margined contracts
그리고USDT-margined contracts
. 프로그래밍 거래 및 양적 거래의 경우 거래 쌍뿐만 아니라 계약 유형도 결정해야합니다. 예를 들어, BTC와 거래하고 싶다면 분기 계약 (각 분기 만료되면 배달), 주간 계약 (매주 금요일 만료되면 배달), 영구 계약 (배급되지 않는 계약) 등을 포함한 많은 BTC 계약이 있습니다.
따라서 어떤 계약 시장에서 거래해야 하는지 설명할 때, 어떤 통화 기호 (거래 쌍) 과 어떤 계약 유형 (계약 코드) 이 있는지 설명해야 합니다.
암호화 마진 계약
암호화폐를 마진으로 사용하는 계약 (예를 들어 BTC 암호화폐 마진 계약, BTC를 마진으로 사용하는 계약, 수익은 BTC이기도 합니다), 그들의 수익도 암호화폐입니다. 일반적으로 암호화폐 마진 계약의 거래 쌍의 코트 통화는 USD로 표현됩니다. 따라서 거래 쌍은 BTC_USD이며 계약은 분기 계약입니다.BTC crypto-margined quarterly contract
시장입니다.
FMZ 양자 거래 플랫폼에서,exchange.SetCurrency("BTC_USD")
거래 쌍을 설정하고exchange.SetContractType("quarter")
분기 계약을 설정합니다. 이런 식으로 현재 거래 기호는BTC crypto-margined quarterly contract
.
USDT 마진 계약
USDT를 마진으로 사용하는 계약 (예: BTC USDT-마진 영구 계약, 마진으로 USDT를 사용하며 수익금은 또한 USDT입니다), 수익금은 또한 USDT입니다. 일반적으로 USDT 마진 계약의 거래 쌍의 코팅 통화는 USDT로 표현됩니다. 따라서 거래 쌍은 BTC_USDT이며 계약은 영구 계약입니다.BTC USDT-margined perpetual contract
시장입니다.
FMZ 양자 거래 플랫폼에서,exchange.SetCurrency("BTC_USDT")
거래 쌍을 설정하고exchange.SetContractType("swap")
상시계약을 설정합니다.BTC USDT-margined perpetual contract
.
순서
명령이란 정확히 무슨 뜻일까요?
주문은 우리가 플랫폼에서 구매하거나 판매할 때 플랫폼에 제출하는 주문 티켓이다. 주문은 시장 주문, 제한 주문, 조건부 주문 등으로 나
스팟 스포트 오더와 시장 오더는 일반적으로 구매 오더에 주의를 기울여야 합니다. 구매 스포트 시장 오더의 주문 금액은 통화 기호 금액이 아니라 통화 금액입니다. 시장 오더가 가격을 결정하지 않기 때문에 구매 금액을 결정하기 위해 통화 금액 만 사용할 수 있습니다. 판매 시장 오더의 금액은 통화 기호 금액입니다. 가격이 불확실하더라도 판매 된 통화 기호의 금액을 결정할 수 있기 때문입니다.
계약 계약의 주문 금액은 특별합니다. 일반적으로 계약 금액입니다. 플랫폼의 계약 주문 인터페이스는 기본적으로 계약 금액이며, 통화 기호 금액을 주문 금액으로 사용하는 인터페이스는 없습니다. 바이낸스 USDT 마진 BTC 영구 계약은 BTC 영구 계약을 0.01의 금액으로 주문할 수 있지만, 통화 기호 금액이 아니라 계약 금액입니다. 한 계약이 한 BTC인 경우가 있습니다. 일반적으로, 시장 주문이나 제한 주문이든 상관없이, 주문 금액은 계약 금액의 숫자입니다.
구매자 주문 & 제작자 주문 타자 주문은 유동성을 제공하는 주문입니다. 간단히 말해서, 이것은 현재 시장 가격이 1을 구매하기 위해 10이고, 1을 판매하기 위해 11라는 것을 의미합니다. 이 시점에서, 나는 9의 구매 가격으로 구매 주문을 기다립니다. 또는 12의 판매 가격으로 판매 주문을 기다립니다. 그 다음, 나는 시장의 깊이에 대한 주문을 제공합니다. 이 내 명령은 타자입니다. 여전히이 예제에서, 내가 11의 가격으로 구매 주문을 배치하면; 이 시점에서, 내 명령은 시장에서 11의 가격에 판매 주문으로 거래됩니다. 이 시점에서, 나는 시장에서 주문을 받아, 그 때 내가 배치 한 구매 주문은 타자 주문이었습니다.
예를 들어, 주문 배치 기능exchange.Sell
그리고exchange.Buy
FMZ Quant에 캡슐화 된 일반적인 제한 주문 및 시장 주문 인터페이스가 캡슐화됩니다. 명령을 할 때 주문이 타커 또는 메이커로 분류되는 것은 주문 가격과 현재 시장에 달려 있으며 주문이 유동성을 제공하거나 유동성을 감소시키는지에 달려 있습니다.
FMZ Quant에 -1의 가격을 수입할 때, 그것은 시장 주문을 할 것입니다. 현시장 구매 주문의 주문 금액이 돈 금액이라는 점에 유의하십시오. 시장 주문은 확실히 유동성을 감소시키고, 타커 주문이어야합니다.
플랫폼 조건부 순서
많은 플랫폼은 조건부 주문을 지원합니다.iceberg order
, stop loss order
, stop profit order
, post_only: only place maker order
, fok: all executed or canceled immediately
, ioc: executed immediately or cancel the rest
, 등등
이 명령은exchange.IO
기능에 FMZ 양을 직접 플랫폼 주문 인터페이스에 액세스하여 설정해야 하는 매개 변수를 지정하기 위해 (어떤 조건부 명령을 지정) 주문을 할 수 있습니다.exchange.IO
기능, FMZ API 문서를 참조하십시오:https://www.fmz.com/api#exchange.io...
양적 거래 플랫폼은 양적 거래 도구로 간주 될 수 있습니다. 온라인 소프트웨어 시스템, 웹 사이트 또는 로컬 실행 프로그램 또는 GITHUB에서 오픈 소스 프로젝트일 수도 있습니다. 간단하게 말하면 양적 거래 도구로 생각할 수 있습니다.
FMZ 양자 거래 플랫폼 FMZ 퀀트 트레이딩 플랫폼은 온라인 분산 시스템입니다. 플랫폼 및 튜토리얼에 대한 친숙성을 위해 다음을 참조할 수 있습니다.https://www.fmz.com/bbs-topic/4145
FMZ 양자 거래 플랫폼의 백테스트 시스템 백테스트 시스템이란 무엇일까요? 간단히 말해서, 백테스트 시스템은 특정 거래 기호의 역사 데이터를 재생하고, 특정 전략을 재생에 포함시키고, 역사 데이터 재생을 시뮬레이션 할 때 전략의 거래 성능을 얻는 것입니다. 따라서, 백테스트 시스템은 단지 샌드박스 환경입니다 (어린이들이 플레이하는 모래 덩어리를 상상하고 모래 덩어리는 다양한 것으로 만들어질 수 있습니다. 그것은 실제 물체와 관련이없는 모델입니다.), 그러면 백테스트 시스템이 실제 플랫폼의 기능을 갖는 것은 불가능합니다.
FMZ 양자 거래 백테스트 시스템:
이름 | 종류 | 지침 |
---|---|---|
비트피넥스 | 스팟 교환 대상 | 제한된 거래 쌍을 지원합니다. 예를 들어: BTC_USD, ETH_USD 및 LTC_USD 등 (거래 쌍의 코팅 화폐는 USD 달러입니다) |
바이낸스 | 스팟 교환 대상 | 제한된 거래 쌍을 지원합니다. BTC_USDT, ETH_USDT, ETH_BTC 및 LTC_BTC 등 |
오케이 | 스팟 교환 대상 | 제한된 거래 쌍을 지원합니다. BTC_USDT, ETH_USDT, ETH_BTC 및 LTC_BTC 등 |
후오비 | 스팟 교환 대상 | 제한된 거래 쌍을 지원합니다. BTC_USDT, ETH_USDT, ETH_BTC 및 LTC_BTC 등 |
OKEX 선물 | 선물 거래소 대상 | 제한된 거래 쌍을 지원합니다. 예를 들어: BTC_USD 및 ETH_USD 등; 거래 쌍의 코팅 통화는 USD입니다. 특정 계약 코드를 설정 한 후 (함수 exchange.SetContractType 참조), 계약은 암호화 마진 계약입니다. 지원되는 계약 코드는: this_week, next_week, quarter and swap입니다. |
HuobiDM | 선물 거래소 대상 | HuobiDM는 Huobi 퓨처스 (Huobi Contract) 이며, BTC_USD와 ETH_USD 등과 같은 제한된 거래 쌍을 지원합니다. 거래 쌍의 코팅 통화는 USD입니다. 특정 계약 코드를 설정 한 후 (기능 교환.SetContractType 참조하십시오), 계약은 암호화 마진 계약입니다. 지원되는 계약 코드는: this_week, next_week, quarter 및 swap입니다. |
BitMEX | 선물 거래소 대상 | 거래 쌍은 XBT_USD입니다. 특정 계약 코드를 설정 한 후 (함수 exchange.SetContractType를 참조하십시오), 계약은 암호화 마진 계약입니다. 지원되는 계약 코드는: XBTUSD |
바이낸스 선물 | 선물 거래소 대상 | 제한된 거래 쌍을 지원합니다. 예를 들어: BTC_USDT와 ETH_USDT 등; 거래 쌍의 코팅 통화는 USD입니다. 특정 계약 코드를 설정 한 후 (기능 교환을 참조하십시오.SetContractType), 계약은 USDT 마진 계약입니다. 지원되는 계약 코드는 swap입니다. |
파생 옵션 | 선물 거래소 대상 | 거래 쌍은: BTC_USD 및 ETH_USD; 특정 계약 코드를 설정 한 후 (기능 교환을 참조하십시오.SetContractType), 계약은 암호화 마진 계약입니다. 특정 옵션 계약 코드를 설정해야합니다. |
양적 거래의 API KEY
모든 플랫폼은 API 인터페이스를 가지고 있으며 양적 거래 플랫폼은 또한 API 인터페이스를 가지고 있습니다. 예를 들어 FMZ 양적 거래 플랫폼을 취하면 FMZ의 API 인터페이스는extended API
. FMZ 플랫폼의 일부 기능은 프로그래밍 방식으로 작동 할 수 있습니다. 예를 들어, 팩에 봇을 추가, 팩에 봇을 시작, 팩에 봇의 구성 등을 수정. 자세한 내용은 참조하십시오:https://www.fmz.com/api#fmz平台扩展api- 그래요
확장된 API는 또한 흥미로운 일을 하기 위해 사용할 수 있습니다, 예를 들어FMZ Quant의 확장된 API를 사용하여
거래용 제 플랫폼 계정을 자동으로 제어하는 것이 정확히 무엇입니까? 이것은 프로그램 트레이딩과 양적 트레이딩의 구체적인 실시예입니다. 프로그래밍 트레이딩 스크립트입니다. 이러한 실시간 프로그램은 다양한 언어로 작성 될 수 있습니다. 예를 들어, FMZ 퀀트 트레이딩 플랫폼은 자바스크립트, 파이썬 및 C ++ 언어로 실시간 트레이딩 전략을 작성하는 것을 지원합니다. 이러한 스크립트 프로그램은 플랫폼 API 인터페이스를 통해 계정의 구매 및 판매와 같은 다양한 작업을 수행합니다.
프로그래밍된 거래 스크립트가 실행되는 장치
봇의 스크립트 프로그램은 디바이스 캐리어 (단서로, 봇이 실행할 수 있는 공간이 있어야 한다) 를 가져야 한다. 암호화폐 서클의 양적 거래는 일반적으로 홍콩의 알리바바 클라우드 서버에 봇 프로그램을 배포한다 (물론, 다른 장소, 다른 사업자의 서버도 사용할 수 있다). 현재 많은 플랫폼이 해외 네트워크 액세스를 필요로 하는 점을 고려할 때, 많은 플랫폼 API 인터페이스를 실행하기 위해 국내 서버를 사용하는 것은 불가능하다. 일반적으로, 인터페이스가 접근성이 없다면,timeout
보고될 것입니다.
FMZ 퀀트에서는 일반적으로 홍콩의 알리바바 클라우드 서버에 자신의 소프트웨어 프로그램을 배포할 수 있습니다. (FMZ 퀀트의 봇 캐리어 소프트웨어는
스크립트 언어 옵션 수많은 프로그래밍 언어가 있고, 기본적으로 모든 언어는 로봇의 스크립트 프로그램을 작성하는데 사용될 수 있습니다. 여기에 우리는 또한 FMZ 양자 거래 플랫폼을 예로 삼아 다양한 언어의 장점을 이해하도록 할 것입니다. FMZ 양자에서 우리는 다음과 같은 프로그래밍 언어로 전략 (보트 스크립트 프로그램) 을 작성 할 수 있습니다.
자바스크립트 그것은 간단하고 사용하기 쉽고 장치 환경에 의존하지 않고 거의 ES6 표준을 지원합니다. 전략 프로그램 실행 속도는 C++ 전략 다음입니다. (FMZ 퀀트 트레이딩에 초보자에게 권장됩니다.)
파이썬 파이썬은 장치 환경에 어느 정도 의존하고 다양한 라이브러리를 설치할 수 있으므로 확장성이 강하다. (FMZ 플랫폼과 파이썬을 잘 알고 있는 학생들에게 추천한다.)
C++
C++의 전략은 가장 빠른 실행 속도, 가장 높은 효율성을 가지고 있으며, 또한 더 사용하기 어렵습니다.
언어를 익히면 다른 언어를 알게 될 거야so easy!
미일어 FMZ가 지원하는 Mylanguage는 가장 기본적인 명령어만을 위한 것입니다.
시각화 모듈 통합 전략 시각적인 방법으로 전략을 만드는 것은 프로그램 논리의 관심, 개선 및 이해를 위한 것입니다. 간단한 논리를 만드는 데 사용할 수 있지만 약간 복잡한 전략을 설계하는 것은 적합하지 않습니다. 유지 및 확장하기가 어렵고 복잡한 논리를 설계하는 것이 더 어렵습니다.