누구나 FMZ Quant 확장 API를 사용하여 양적 플랫폼을 만들 수 있습니다. 데모 항목은 파이썬과 FMZ Quant 확장 API를 사용하여 강력한 양적 플랫폼을 구축하는 방법을 보여줍니다.
DEMO 항목에 따르면, 당신은 서버 측 코드를 작성하고 게시판, 블로그, 커뮤니티 등과 같은 기존 시스템에 삽입하기 위해 프론트 엔드 페이지를 추가하는 것을 참조할 수 있습니다. 기존 사용자 그룹에 대한 유연한 접근을 달성하기 위해 기존 사용자 그룹은 FMZ Quant의 기본 기술 지원을 완전히 경험하지 않을 것입니다. 따라서 사용자의 사용은 더 간결하고 조작이 쉽습니다.
매우 유연한 전략 설계
여러분은 파이썬, 자바스크립트, C++를 사용하여 양적 거래 전략을 작성할 수 있고, 자유롭게 사용자 정의할 수 있고, 제한 없이 양적 거래의 세계에서 자신의 거래 아이디어를 실현할 수 있습니다.
강력하고 효과적인 백테스트 시스템
데이터를 수집할 필요가 없습니다. 그리고 로컬 백테스트 엔진은 간단하게 구성할 수 있는 하나의 명령만 필요합니다. 링크:https://github.com/fmzquant/backtest_python
단순화된 구조
당신은 단지 몇 개의 프론트엔드 페이지와 하나의 HTTP 서버 프로그램을 작성해야 합니다. 쉽게 구조를 구성할 수 있습니다.
이름: FMZ 퀀트는 자신의 자산 관리 양적 플랫폼을 구축하기 위해 확장 API를 사용하는 방법을 보여줍니다.
DEMO 설치
먼저 DEMO를 복제해
git clone https://github.com/fmzquant/fmz_extend_api_demo.git
사전으로 전환하고 pip를 설치하세요.
pip install -r requirements.txt
참고:
설치 후, FMZ 계정 API 키를 구성합니다.
FMZ 확장 API KEY의 사용 세부 사항은 API 문서에서 볼 수 있습니다:
FMZ API 키를 생성합니다.
에 API 키를 입력app.pyDEMO의 서버 프로그램입니다.
DEMO의 서버가 명령을 실행합니다.
python app.py
작동 표시:
서버 프로그램이 실행된 후, 브라우저에서 로컬 페이지를 열십시오:http://127.0.0.1:5000
등록 페이지를 테스트해봐
이제 DEMO 양적 플랫폼이 실행되고 있습니다. 테스트 플랫폼 계정을 등록하십시오 (국가 데이터에 저장됩니다.) 플랫폼 계정의 API 키를 구성하기 위해 로그인하십시오.
이제 다음과 같이 구성됩니다.
페이지에 표시 된 세 가지 전략은 UI 디스플레이 만입니다. 또한 자산 관리 수치 플랫폼 관리자가 구현해야하는 특정 설계가 필요합니다.
테스트 전략을 설정해
이 DEMO에서 서버는
주요 테스트 이익의 전략 코드:
function main() {
while(true) {
LogProfit(Math.random()*100);
Sleep(1000);
}
}
코드를 편집하고 저장을 클릭합니다.
참고: 작동 전에 한 개의 도커가 온라인에 있는지 확인하십시오.
버튼을 클릭하면 자동으로 bot이 생성되어 실행됩니다. 데모 전략으로 묶인 bot은 수익 값으로 표시되는 값을 무작위로 내보낼 수 있습니다.
FMZ Quant의 대시보드에서 새로 만든 봇이 표시되는 것을 볼 수 있습니다.
해당 무작위 값은 또한 DEMO 페이지에 표시됩니다.
FMZ Quant에서 실행되는 봇은 현재 DEMO 플랫폼의 로그인 계정을 appID로 식별합니다.
def robot_run(robotId, appId, exchanges):
strategyId = -1
# You can select to operate a strategy containing the string "main" from the "Strategy"library
for ele in api("GetStrategyList")['data']['result']['strategies']:
if 'main' in ele['name']:
strategyId = ele['id']
if strategyId < 0:
raise u"not found strategy"
settings = {
"name":"robot for %s" % (appId, ),
"args": [], # our custom arguments for this strategey
"appid": appId, # set a label for the bot, to relate to the user
"period": 60,
"strategy": strategyId,
"exchanges": [],
}
for e in exchanges:
settings["exchanges"].append({"eid": e.eid, "pair": get_default_stock(e.eid), "meta" :{"AccessKey": e.accessKey, "SecretKey": e.secretKey}})
if robotId > 0:
return api('RestartRobot', robotId, settings)
else:
return api('NewRobot', settings)
보시다시피,
# Github address update: https://github.com/fmzquant/fmz_extend_api_demo