2.3 일반적인 API 설명

저자:선함, 2019-06-25 12:03:15, 업데이트: 2023-11-13 19:49:04

img

일반적인 API 설명

요약

프로그래밍에 관해서는 API와 떼려야?? 수 없습니다. 많은 프로그래머가 아닌 사람들에게는 API는 무엇입니까? 이 섹션에서는 API가 무엇인지 설명하기 위해 가장 쉬운 언어를 사용하여 FMZ 퀀트 도구에서 일반적으로 사용되는 API를 소개합니다.

API란 무엇인가요?

구글에 검색하면 다음과 같은 결과를 얻을 수 있습니다. API (Application Programming Interface) 는 응용 프로그램 및 개발자에게 소프트웨어 또는 하드웨어에 기반한 일련의 루틴에 액세스 할 수있는 기능을 제공하기 위해 미리 정의된 기능입니다. 소스 코드에 액세스하거나 내부 작동 메커니즘의 세부 사항을 이해하지 않아도됩니다.

사실, 일상 생활에서 우리는 비슷한 API 시나리오를 많이 가지고 있습니다. 예를 들어, 식당에 가서 음식을 먹으면 메뉴를 보고 주문할 필요가 없습니다. 메뉴의 메뉴 이름은 특정 API이고 메뉴는 API 문서입니다.

양적 거래에서 API는 무엇입니까?

예를 들어, 현재 품종의 시작 가격을 얻으려면 정확히 어떻게 얻어야하는지 알 필요가 없습니다. 코드 편집기에 OPEN을 작성하면 됩니다. 직접 사용하면 됩니다.

공통 M 언어 API

M 언어 API에 대해 이야기하기 전에 먼저 일반적인 코드 구조와 기능들을 살펴보자. 이것은 API를 더 잘 이해하는 데 도움이 될 것이다. 다음 예를 참조하십시오.

AA:=OPEN; //Get the opening price of the latest k line and assign the result to the variable AA
BB:=MA(ClOSE,10); //Get the 10-cycle moving average of the latest K line and assign the result to the variable BB

위 코드는:

  • AA는 변수이고 변수는 변수가 변할 수 있는 요소입니다. 우리 초등학교의 대수와 마찬가지로요. 만약 개막값이 AA로 할당된다면, AA는 개막값이고, 가장 높은 가격이 AA로 할당되면, AA는 가장 높은 가격입니다. AA는 그냥 사용자 정의 이름이고, BB 또는 다른 것으로 정의할 수도 있습니다.

  • :=은 할당의 의미입니다. 즉, :=의 오른쪽에 있는 값은 왼쪽에 있는 변수에 주어집니다.

  • OPENMA은 M 언어의 API입니다. 첫 번째 줄의 OPEN은 폐쇄 가격을 얻는 API입니다. 직접 사용할 수 있습니다. 두 번째 줄의 MA는 이동 평균을 얻는 API입니다. 2 개의 매개 변수가 통과되어야합니다. 즉 FMZ Quant 거래 도구에 어떤 종류의 이동 평균이 필요한지 알려야합니다.

  • 노란색 //은 댓글 문자이며, 그 뒤에 있는 영어는 댓글 내용입니다. 이 모든 것은 프로그래머가 코드 줄의 의미를 표시하기 위해 볼 수 있습니다. 프로그램이 실행되기 시작할 때 코멘트는 전혀 처리되지 않습니다. 코멘트 문자 전에 각 코드 줄의 끝에는 반점점이 있어야합니다.

기본 코드 구조에 대한 인식으로, 우리는 아래에서 M 언어의 일반적인 문법을 가져오고, 우리는 미래에 그들을 사용할 것입니다.

  • OPEN - 최신 K 라인의 시작 가격을 얻으십시오

예제: AA:=OPEN; 최신 K 라인의 시작 가격을 얻고 결과를 AA로 할당합니다

  • HIGH - 최신 K 라인의 가장 높은 가격을 얻으십시오

예제: AA:=HIGH; 최신 K 라인의 가장 높은 가격을 얻고 결과를 AA로 할당하십시오.

  • LOW - 최신 K 라인의 가장 낮은 가격을 얻으십시오

예제: AA:=LOW; 최신 K 직선의 가장 낮은 가격을 얻고 결과를 AA로 할당합니다

  • CLOSE - 최신 K 라인의 종료 가격을 얻으십시오.

예제: AA:=CLOSE; 최신 K 라인의 종료 가격을 얻고 결과를 AA로 할당합니다.

  • VOL - 최신 K 라인의 볼륨을 얻으십시오

예제: AA:=VOL; 최신 K 줄의 부피를 얻고 AA에 결과를 할당

  • REF ((X,N) - N 사이클 전에 X의 값을 나타냅니다.

예제: REF(CLOSE,1); 앞선 K 선의 시작 가격을 얻으십시오.

  • MA(X,N) - N주기에서 X의 간단한 이동 평균을 찾아

예제: MA ((CLOSE, 10); //최근 K-라인의 10주기 이동 평균을 얻으십시오

  • CROSSUP ((A,B) A가 아래에서 B를 통과하면 1 (예) 를 반환하고 그렇지 않으면 0 (아니) 을 반환한다는 것을 나타냅니다.

예제: CROSSUP (CLOSE, MA (C, 10)) // 종료 가격 10 사이클 이동 평균 가격

  • CROSSDOWN ((A,B) A가 위에서 B를 지나면 1 (예) 를 반환하고 그렇지 않으면 0 (아니오) 를 반환한다는 것을 나타냅니다

예제: CROSSDOWN ((CLOSE, MA(C,10)) // 종료 가격 10 사이클 이동 평균 가격 아래로 십자

  • BK - 긴 오픈 포지션 구매

예제: CLOSE>MA(CLOSE,5), BK; // 종료 가격은 5주기 이동 평균보다 크다, 오픈 긴 위치

  • SP - 긴 포지션을 닫기 위해 판매

예제: CLOSE

  • SK - 짧은 오픈 포지션을 판매합니다

예제: CLOSE

  • BP - 짧은 포지션을 닫기 위해 커버하기 위해 구매

예제: CLOSE>MA(CLOSE,5), BP; // 종료 가격은 5주기 이동 평균보다 크다, 긴 포지션을 닫는다

  • BPK - 마감 단위 포지션과 오픈 긴 포지션 (반면 오픈 포지션)

예제: CLOSE>MA(CLOSE,5), BPK; // 닫기 가격이 5주기 이동 평균보다 높을 때, 짧은 포지션을 닫고 긴 포지션을 열어야 합니다.

  • SPK - 긴 포지션을 닫고 짧은 포지션을 열고 (대면 오픈 포지션)

예제: CLOSE

  • CLOSEOUT - 모든 포지션을 닫는, 그것은 덧셈과 셈 위치 작업에서 사용하는 것이 좋습니다

예: CLOSEOUT; 현재 보유한 모든 포지션을 닫습니다.

일반적으로 사용되는 자바스크립트 언어 API

자바스크립트 언어 API를 설명하기 전에, 일반적인 코드 구조가 무엇이며 어떤 기능이 있는지 살펴보자. 이것은 API를 더 잘 이해하는 데 도움이 될 것입니다. 다음 예를 참조하십시오.

var aa = exchange.GetRecords(); // get the K-line data
var bb = exchange.SetContractType("BTC_USDT") // set the trading pair to Bitcoin to USDT

위 코드는:

  • 자바스크립트 언어에서 변수를 만드는 것은 종종 declaration 변수라고 불립니다. 우리는 변수를 선언하기 위해 var 키워드를 사용합니다. 변수 이름은: aa입니다.

  • 자바스크립트 언어에서는, 좌측 변수에 =의 오른쪽에 있는 값을 부여하는 것과 같은, 동등한 기호를 할당합니다.

  • 코드 exchange은 교환 객체입니다. 여기서 교환은 플랫폼 페이지에서 설정하는 교환을 의미합니다. 이것은 고정된 형식입니다. 즉, JavaScript 언어의 API를 호출 할 때 교환 객체를 지정해야합니다.

  • 녹색 코드는 자바스크립트 언어의 API입니다. 우리가 그것을 호출할 때, 실제로 교환 객체에서 함수를 호출합니다. 코드의 뒤에 있는 점도 고정된 형식이라는 점에 유의하십시오. 여기서 함수는 중학교에서 배운 함수와 동일한 의미입니다. 함수가 매개 변수를 지정할 필요가 없는 경우, 빈 괄호로 표시됩니다. 함수가 매개 변수에 통과해야하는 경우, 매개 변수는 괄호로 작성됩니다.

코드의 기본 구조를 이해하기 위해 케이스를 사용한 후, 앞으로 사용할 몇 가지 자바스크립트 언어 API를 살펴봅시다.

  • SetContractType (variety code ) - 거래 쌍을 설정, 당신이 거래하고 싶은 거래 종류입니다

예제: exchange.SetContractType ((BTC_USDT); //Bitcoin에서 USDT로 거래 쌍을 설정

  • GetTicker - 틱 데이터를 얻으십시오

예제: exchange.GetTicker ((); //Get Tick 데이터

  • GetRecords - K 줄 데이터를 얻으십시오

예제: exchange.GetRecords ((); //Get K 줄 데이터

  • 구매 - 오래 구매

예제: 교환.사용 (50000원, 1원)

  • 판매 - 짧은 판매

예제: 교환.판매 (5000, 1); // 5,000에 하나의 유닛을 판매

  • GetAccount - 계정 정보를 얻으십시오

예제: exchange.GetAccount ((); //계정 정보를 얻으십시오

  • GetPosition - 위치 정보를 얻으십시오

예제: exchange.GetPosition ((); // 위치 정보를 얻으십시오

  • SetDirection - 긴 또는 짧은 명령어 유형을 설정

예를 들어:

exchange.SetDirection ((buy); //장장 포지션을 열기 위한 주문 타입을 설정

exchange.SetDirection ((closebuy); //장장 포지션을 닫기 위해 판매하는 오더 타입을 설정

exchange.SetDirection ((sell); //오더 타입을 설정하여 짧은 포지션을 개척합니다

exchange.SetDirection ((closesell); // close short 포지션을 커버하기 위해 구매하는 오더 타입을 설정

  • 로그 - 로그에서 메시지를 출력

예제: 로그 (( hello, World ); // 출력 로그에 "hello world"

  • 잠자리 - 프로그램을 잠시 중지

예제: 잠자리 (1000); / / 프로그램을 1초 동안 멈추게 합니다 (1000 밀리초 = 1초)

어떤 사람들은 의구심을 가질 수 있습니다, 위와 같은 많은 API, 나는 어떻게 모든 것을 기억할 수 있습니까? 실제로, 당신은 그들 중 하나를 기억할 필요가 없습니다, FMZ 퀀트 공식 웹 사이트는 상세한 API 문서를 가지고 있습니다. 사전을 검색하는 것과 마찬가지로, 당신이 그것을 사용할 때마다, 당신은 우리의 문서를 통해 확인 할 필요가 있습니다. 코딩 부분에서 두려워하지 마십시오. 우리가 원하는 것은 이러한 언어를 통해 우리의 전략을 조직하는 것입니다. 기술이 양적 거래의 문턱이 아니라는 것을 기억하십시오. 우수한 거래 전략은 모든 것 중 가장 중요합니다.

요약하면

위는 양적 거래에서 가장 일반적으로 사용되는 API입니다. 기본적으로는: 데이터를 얻고, 데이터를 계산하고, 주문을 할 수 있습니다. 이러한 단계는 간단한 양적 거래 전략을 처리하기에 충분해야합니다. 더 나아가, 더 복잡한 전략을 작성하고 싶다면 FMZ Quant 웹 사이트에 가서 그것을 얻어야합니다.

학교 밖 운동

1, M 언어의 5주기 평균 라인 업 크로스 10주기 이동 평균 라인 문장을 작성하려고 합니다.

2, 자바스크립트 언어 GetAccount을 사용하여 계정 정보를 얻으시고, Log을 사용하여 로그에 인쇄하세요.

다음 섹션에 대한 알림

프로그래밍은 레고 블록을 조립하는 것과 같습니다. API는 빌딩 블록의 다양한 부분과 같습니다. 프로그래밍 과정은 각 레고 부분을 완전한 장난감으로 만드는 것입니다. 다음 섹션에서는 M 언어 API를 사용하여 완전한 양적 거래 전략을 조립하도록 안내합니다.


관련

더 많은