FMZ는 파이썬 네이티브 검색 엔진을 출시했습니다.

저자:작은 꿈, 2018-04-13 09:48:31, 업데이트: 2019-08-19 16:30:05

FMZ는 파이썬 네이티브 검색 엔진을 출시했습니다.

FMZ 백테스트 엔진 python 패키지 FMZ 재검토 엔진 python 라이브러리 python2와 python3를 지원합니다. 파이썬2 및 파이썬3를 지원합니다. 윈도우 시스템, 리눅스 시스템, 애플 맥 OS 시스템을 지원합니다.

설치

설치 명령줄에서 다음 명령을 입력합니다:

pip install https://github.com/fmzquant/backtest_python/archive/master.zip
  • 주의: 애플 맥 시스템을 설치할 때, 보안 제약이 있는 경우 pip 명령어 앞에 sudo 명령어를 추가해야 하며, 전체 설치 명령어가 실행되기 전에 시스템 암호를 입력해야 한다.

간단한 예제

간단한 예

'''backtest
start: 2018-02-19 00:00:00
end: 2018-03-22 12:00:00
period: 15m
exchanges: [{"eid":"OKEX","currency":"LTC_BTC","balance":3,"stocks":0}]
'''
from fmz import *
task = VCtx(__doc__) # initialize backtest engine from __doc__
print exchange.GetAccount()
print exchange.GetTicker()
print task.Join() # print backtest result

The config string can be generated automatically by saving the backtest configuration in the strategy edit page. 이 컨피그 문자열은 전략 편집 페이지에서 백테스트 구성을 저장하여 자동으로 생성될 수 있습니다. 설정 문자열은 정책 편집 인터페이스에서 저장된 검색 설정으로 자동으로 생성됩니다.

meta

문서

API 문서: (예: 예제에서 GetAccount 같은 함수를 호출하는 문서)

파이썬 코드의 간단한 설명:

'''backtest
start: 2018-02-19 00:00:00
end: 2018-03-22 12:00:00
period: 15m
exchanges: [{"eid":"OKEX","currency":"LTC_BTC","balance":3,"stocks":0}]
'''
from fmz import *                                                  # 引用 发明者量化 库
task = VCtx(__doc__) # initialize backtest engine from __doc__     # 调用 VCtx 函数 根据 __doc__初始化。
print exchange.GetAccount()                                        # 测试 GetAccount 函数,并打印 回测系统测试交易所账户信息
print exchange.GetTicker()                                         # 测试 GetTicker 函数,并打印 回测系统 行情信息
print task.Join() # print backtest result                          # 调用 初始化后的 task 对象 显示回测结果
  • __doc__

    是两个下划线。__doc__用来访问模块,类声明或者函数的声明中第一个未被赋值的字符串,
    可以是被""" ""","" "",' ',括起来的,作用就是把 代码中 '''backtest   ...  ''' 的回测配置信息  传入 VCtx 类构造函数构造对象。
    
  • 이 문서는 로그, GetTicker 함수를 호출하는 방법을 테스트하는 코드를 수정합니다.

    # coding=UTF-8
    
    '''backtest
    start: 2018-02-19 00:00:00
    end: 2018-03-22 12:00:00
    period: 15m
    exchanges: [{"eid":"OKEX","currency":"LTC_BTC","balance":3,"stocks":0}]
    '''
    
    from fmz import *                                                # 引用 发明者量化 库
    task = VCtx(__doc__) # initialize backtest engine from __doc__     # 调用 VCtx 函数 根据 __doc__初始化。
    print exchange.GetAccount()                                        # 测试 GetAccount 函数,并打印 回测系统测试交易所账户信息
    Log("\n 调用Log")
    Log("调用 exchange.GetTicker() : ", exchange.GetTicker())
    print task.Join() # print backtest result                          # 调用 初始化后的 task 对象 显示回测结果
    
    • print exchange.GetAccount ((() 의 코드 출력은 다음과 같습니다.
    {'Balance': 3.0, 'Stocks': 0.0, 'FrozenBalance': 0.0, 'FrozenStocks': 0.0}
    
    • 로그 (Log) 、 로그 (Log) (Call) (Call) (Call) (Call) (Call) (Call) (Call) (Call) (Call) (Call) (Call) (Call)

    출력된 내용은 print task.Join ((() 출력 데이터의 구조에서:

    {
        "Chart": {
     	   "Cfg": "",
     	   "Datas": []
        },
        "Elapsed": 42000000,
        "Finished": true,
        "Indicators": {},
        "LoadBytes": 441845,
        "LoadElapsed": 24000000,
        "LogsCount": 2,
        "Profit": 0.0,
        "ProfitLogs": [],
        "Progress": 100.0,
        "RuntimeLogs": [                                                  # 调用输出内容在此处
     	   [1, 1518969600200, 5, "", 0, 0.0, 0.0, "\n 调用Log", "", ""],
     	   [2, 1518969600400, 5, "", 0, 0.0, 0.0, "调用 exchange.GetTicker() :  {'Sell': 0.02113476, 'Volume': 519.6953, 'Buy': 0.02113474, 'Last': 0.02113475, 'High': 0.02113476, 'Time': 1518969600000L, 'Low': 0.02113474}", "", ""]
        ],
        "Snapshort": [{
     	   "Balance": 3.0,
     	   "BaseCurrency": "LTC",
     	   "Commission": 0.0,
     	   "FrozenBalance": 0.0,
     	   "FrozenStocks": 0.0,
     	   "Id": "OKEX",
     	   "QuoteCurrency": "BTC",
     	   "Stocks": 0.0,
     	   "Symbols": {
     		   "LTC_BTC_OKEX": {
     			   "Last": 0.01893785
     		   }
     	   },
     	   "TradeStatus": {}
        }],
        "Status": "",
        "Task": {
     	   "Args": null,
     	   "Exchanges": [{
     		   "Balance": 3,
     		   "BaseCurrency": "LTC",
     		   "BasePeriod": 300000,
     		   "BasePrecision": 4,
     		   "DepthDeep": 5,
     		   "FaultTolerant": 0,
     		   "FeeDenominator": 5,
     		   "FeeMaker": 75,
     		   "FeeMin": 0,
     		   "FeeTaker": 80,
     		   "Id": "OKEX",
     		   "Label": "OKEX",
     		   "PriceTick": 1e-08,
     		   "QuoteCurrency": "BTC",
     		   "QuotePrecision": 8,
     		   "SlipPoint": 0,
     		   "Stocks": 0
     	   }],
     	   "Options": {
     		   "DataServer": "q.botvs.net",
     		   "MaxChartLogs": 800,
     		   "MaxProfitLogs": 800,
     		   "MaxRuntimeLogs": 800,
     		   "NetDelay": 200,
     		   "Period": 900000,
     		   "RetFlags": 189,
     		   "SnapshortPeriod": 300000,
     		   "TimeBegin": 1518969600,
     		   "TimeEnd": 1521691200,
     		   "UpdatePeriod": 5000
     	   }
        },
        "TaskStatus": 1,
        "Time": 1521691200000
    }
    
  • 로컬 검색 엔진에서 정책을 사용하는 방법

# !/usr/local/bin/python
# -*- coding: UTF-8 -*-
'''backtest
start: 2018-02-19 00:00:00
end: 2018-03-22 12:00:00
period: 15m
exchanges: [{"eid":"Bitfinex","currency":"BTC_USD","balance":10000,"stocks":3}]
'''
import sys
sys.path.append("/usr/local/lib/python2.7/site-packages")    # 测试时添加了路径,如不需要可以删除

from fmz import *
import math
import talib

task = VCtx(__doc__) # initialize backtest engine from __doc__

# ------------------------------ 策略部分开始 --------------------------
print exchange.GetAccount()     # 调用一些接口,打印其返回值。
print exchange.GetTicker()

def adjustFloat(v):             # 策略中自定义的函数
    v = math.floor(v * 1000)
    return v / 1000

def onTick(e):
    Log("onTick")
    # ....

#
# ...
# 
# 此处省略 自定义函数实现等代码。

def main():
    InitAccount = GetAccount()
    
    while True:
        onTick(exchange)
        Sleep(1000)
# ------------------------------ 策略部分结束 --------------------------

try:
    main()                     # 回测结束时会 raise EOFError() 抛出异常,来停止回测的循环。所以要对这个异常处理,在检测到抛出的异常后调用 task.Join() 打印回测结果。
except:
    print task.Join()          # print backtest result  , 打印回测结果。

더 많은

알렉스타오/Users/taoxing/opt/anaconda3/envs/ai4f/lib/python3.8/site-packages/flask_sqlalchemy/__init__.py:793: FSADeprecationWarning: SQLALCHEMY_TRACK_MODIFICATIONS는 상당한 오버헤드를 추가하고 미래에 기본적으로 비활성화됩니다. Set it to True or False to suppress this warning. warnings.warn ((FSADeprecationWarning)) 트레이스백 (최근 통화 마지막): 파일 "/Users/taoxing/Desktop/quant/trading_api_study/fmz/fmz_extend_api_demo/app.py", 152, in db.create_all (db) 파일 "/Users/taoxing/opt/anaconda3/envs/ai4f/lib/python3.8/site-packages/flask_sqlalchemy/__init__.py", 라인 963, in create_all self._execute_for_all_tables (app, bind, 'create_all') 파일 "/Users/taoxing/opt/anaconda3/envs/ai4f/lib/python3.8/site-packages/flask_sqlalchemy/__init__.py", line 955, in _execute_for_all_tables op ((bind=self.get_engine ((app, bind), **extra) 파일 "/Users/taoxing/opt/anaconda3/envs/ai4f/lib/python3.8/site-packages/flask_sqlalchemy/__init__.py", line 896, in get_engine return connector.get_engine (귀향 연결기) 파일 "/Users/taoxing/opt/anaconda3/envs/ai4f/lib/python3.8/site-packages/flask_sqlalchemy/__init__.py", line 556, in get_engine self._sa.apply_driver_hacks ((self._app, info, options) 이 있습니다. 파일 "/Users/taoxing/opt/anaconda3/envs/ai4f/lib/python3.8/site-packages/flask_sqlalchemy/__init__.py", 라인 861, in apply_driver_hacks info.database = os.path.join (app.root_path, info.database) AttributeError: attribute를 설정할 수 없습니다 어떤 잘못이 있었는지, 하나님의 인도를 구하라!!!

위랑레이 我想运行实盘机器人,添加Wex.app交易所相当于实盘模拟交易是吧?谢谢

위랑레이하지만 실제 디스크에서 검색된 데이터는 조금밖에 없습니다. 어떤 설정을 최적화하여 더 많은 실제 디스크 데이터를 얻을 수 있을까요? /upload/asset/105f604eaceb0d3928a90.png /upload/asset/1066714d9a32c82eab7f1.png

위랑레이안녕하세요, 저는 토큰 현금 husd/usdt 거래 쌍을 사용하고 싶습니다. 저는 exchange.IO (currency, HUSD_USDT) 를 시도했습니다.

매일매일 예쁘다이 테스트 결과는 이해가 안되는데 어떻게 시각화할 수 있을까요?

위랑레이윈도우 시스템에서, 교환이 어떻게 해결할 수 있는지 찾을 수 없습니다. 감사합니다.

와시이투시현재 리테스트 시스템이 지원하는 트랜잭션은 거의 없습니다. 이 오픈소스 프로젝트는 개발자가 트랜잭션 쌍을 추가하도록 허용합니까?

1058715329언제 로컬 파라미터 최적화를 지원할 수 있을까요?

한쪽 길@小小梦 감사합니다. ◎ 파이썬3의 템플릿이 있나요? fmz 라이브러리를 다운로드했지만 사용 중 오류가 발생하여 패키지가 어디에 있는지 찾을 수 없습니다. /upload/asset/1042a0deeb6624376f8fb.png

위스Tick 모드를 설정하는 방법. 기본적으로는 아날로그 레벨의 Tick을 사용하는 것처럼 보입니다. 실제 디스크 레벨의 Tick로 전환하는 방법

시아오기안이 예제에서 메인 함수가 어디에 있어야 하는지

시아오기안다시 테스트하는 것은 LTC_BTC로만 가능한가요? BTC_USDT로 변경하면 오류가 발생합니다.

테디print exchange.GetTicker ((() 는 Python3에서 print (exchange.GetTicker ((()) 로 쓰여야 하는가?

yxybyq플랫폼에서 검색하는 것은 문제가 없습니다.

리푸트fmz에서는 main 함수를 직접 작성하고, 대부분의 정책이 while True를 직접 작성하고, 반복적으로 호출되는 것을 볼 수 있다. 그러나 python의 로컬 검색 엔진을 사용하는 경우, while True는 프로그램을 계속 실행하도록 하고, __doc__가 지정한 시작 시간과 종료 시간 내에 실행을 중지할 수 없으며, Log의 출력을 부여한다. 또한, 나는 다른 양화 플랫폼에서 일반적으로 개발자가 지정한 함수를 작성하고 플랫폼이 호출하는 것을 보았습니다. fmz는 직접 메인 입력을 작성하도록 허용합니다. 어떤 디자인적 또는 구조적 장점이나 고려가 있습니까?

리푸트코드에 있는 상호작용 입력 변수는 __doc__에 어떻게 쓰나요, 아니면 변수로 입력하나요?

리푸트코드가 fmz로 변경되었습니다. 문서의 예제 코드는 패키지 이름을 변경해야 합니다.

그래요main (()) 는 정상입니다. 그래서, 만약 우리가 이 문제를 해결하기 위해 파일 "D:/workspace/strategy/strategy_001.py", 101, in main 계정 = self._exchange.GetAccount 파일 "C:\Users\User\AppData\Local\Programs\Python\Python36-32\lib\site-packages\botvs.py", 라인 716, in GetAccount EOF ((() 파일 "C:\Users\User\AppData\Local\Programs\Python\Python36-32\lib\site-packages\botvs.py", line 569, in EOF raise EOFError ((()

토프시언이 물건이 뭘 하는 건지 모르겠어요

리자이 로컬 리코딩은 botvs 플랫폼과 통신해야 하는가? 리코딩의 어떤 정책이 어디에 설정되어 있는지 잘 모르겠습니다.

작은 꿈최신 fmz 패키지를 사용해 보세요.

작은 꿈호스트는 무료로 사용할 수 있지만, 한 키 배포는 알리 클라우드의 서버를 자동으로 임대하는 것입니다. 이 비용은 서버의 비용입니다. 한 키 배포는 좋습니다.

위랑레이이것은 관리자가 지불하고, 로봇을 실행하는 사람이 WexApp를 테스트할 수 있고, 실제 거래소에서 실제 거래를 할 수 있다는 것을 의미합니다.

작은 꿈알리 클라우드 서버에 배포된 배포 호스트는 지불되며 귀하의 계정 잔액에서 청구됩니다. 로봇이 실행되면 wexApp 모형 디스크만 작동합니다. 로봇 요금은 청구되지 않으며 배포 호스트 서버 요금과 관련이 없습니다.

위랑레이즉, 하나의 버튼을 누르면 서버를 배포하고, WexApp, 로봇과 동화 거래소를 선택하여 동화를 테스트 할 수 있습니다.

작은 꿈이 키를 배포하는 렌터 서버는 다른 추가 요금이다. 로봇의 실제 디스크 요금과 관련이 없으며, wexApp 디스크를 사용하는 것은 로봇이 무료로 작동한다고 말합니다.

위랑레이한 단추 임대 관리자, wexApp 거래소를 무료로 사용하세요? /upload/asset/1066e4b56fa103356dbc1.png

작은 꿈wexApp는 FMZ의 시뮬레이션 디스크이며 무료입니다.

작은 꿈이 모든 것은 매우 무례합니다.

작은 꿈실제 디스크 수준에서 재 측정 데이터의 양이 더 많기 때문에 이미 그래프 설정이 최적화되어 있습니다.

위랑레이최근 기간을 위해 OK 거래 쌍으로 설정하여, exchange.SetCurrency (("BTC_USDT") 는 실제 거래가 가능합니다.

작은 꿈최근 시간대를 바꾸어 보세요.

위랑레이/upload/asset/1063627010637fee333ad.png 코드에 이렇게 설정합니다. exchange.SetCurrency (("BTC_USDT") 하지만 모든 팁 품종 구독 실패 BTC_USDT_OKEX 또는 아무것도 표시되지 않습니다, 바로 종료

위랑레이감사합니다.

작은 꿈실제 디스크가 가능하고, 플랫폼 라인 리모테이션 및 로컬 리모테이션 엔진은 FMZ 데이터 센터의 데이터로 제한된 거래 쌍 데이터를 제공하며, 모든 거래 쌍은 없습니다.

위랑레이실제 거래는 이 거래를 얻을 수 있을까요?

작은 꿈이 트랜잭션 쌍의 데이터는 현재 리테이크 시스템에 없습니다.

작은 꿈재검토 결과는 데이터 형식이며, 시각화하려면 코드를 직접 작성해야 합니다. 그렇지 않으면 온라인 재검토 시스템을 사용할 수 있습니다.

위랑레이A5:=MA ((C,5); A10:=MA(C,10); 각:IF(CROSS(A5,A10),ATAN((A5/REF(A5,1)-1) *100) -ATAN((A10/REF(A10,1)-1) *100),0) *180/3.1416; 이 공식을 찾은 것은 REF가 어떻게 이루어지는지 모른다는 것입니다.

작은 꿈이것은 필요에 따라 계산되고, 전략에 포함되어 있으며, 공식은 바이오사이트 검색을 통해 찾을 수 있습니다.

위랑레이Macd 금포 \ 사각을 계산하는 방법을 알려주세요. 계산 수식은 있나요? 감사합니다.

위랑레이정책 편집기에서 statsmodels를 수입하는 것이 유효하지 않나요? 제3자 라이브러리를 가져올 수 있나요? pycharm에서 가져올 수 있지만 편집기에서 어떻게 가져올 수 있나요?

작은 꿈이것은 고정된 K 라인의 시작 시간이며, 0에서 시작하는 일일 K 라인이 필요한 경우 1시간 K 라인의 합성으로 계산될 수 있다.

위랑레이이 문서는 중국시간으로 8시에 문을 닫는 것과 같은 문서를 작성하고 있습니다. 닫는 시간이 오전 8시가 아니라면 어떻게 설정하는지 알려주세요. /upload/asset/1067eabe09e92d1610d71.png

작은 꿈전략 광장에서 몇 가지 전략 예제를 찾을 수 있습니다. 모든 것을 이해하면 간단한 전략을 직접 작성 할 수 있습니다.

위랑레이저는 초등 교육 자료, FMZ 사용 방법, API 문서를 모두 읽었습니다. 다음으로 그 지식을 볼까요? 감사합니다.

작은 꿈이 모든 것은 매우 무례합니다.

위랑레이감사합니다.

작은 꿈이것은 명령줄에서 바로 실행될 수 있습니다.

위랑레이이 코드는 제가.py 파일에서 실행할 때 ccxt를 가져오야 합니다. 그렇지 않으면, exchange는 인식할 수 없습니다. Python Consle에서 편집하면 정상적으로 작동합니다.

작은 꿈이 코드는 직접 명령어를 실행하는 것입니다.

위랑레이/upload/asset/106d6ff1919bdac419875.png ccxt를 가져오는 교환이 작동하고, fmz에 ccxt을 사용합니까?

작은 꿈이 글은 한 가지 더 중요한 부분입니다. 파일 이름 testBackTest `` fmz에서 가져오기 * task = VCtx (('''백테스트 2018-02-19 00:00:00 end: 2018-03-22 12:00:00 기간: 15m exchanges: [{"eid":"OKEX","currency":"LTC_BTC","balance":3,"stocks":0}] ''') #createbacktest print ((exchange.GetAccount)) print ((exchange.GetTicker)) `` /upload/asset/16bea6055e58a9ef7d5c.png

작은 꿈최신 버전의 fmz 파이썬 패키지를 사용해 보세요.

위랑레이/upload/asset/1068d63bc6203599fc1c8.png 이니셔얼화가 변경되었지만, Exchange, Log는 여전히 인식되지 않습니다.

작은 꿈`` fmz에서 가져오기 * task = VCtx (('''backtest) 2018-02-19 00:00:00 end: 2018-03-22 12:00:00 기간: 15m exchanges: [{"eid":"OKEX","currency":"LTC_BTC","balance":3,"stocks":0}] ''') # 재검토 환경을 만드는 `` 이렇게 초기화하면 온라인 리모컨을 구성하는 것처럼 거래소, 거래 쌍 등 정보를 설정합니다.

위랑레이/upload/asset/106581e23604bb2d701d8.jpg Exchange는 인식되지 않습니다. fmz 패키지가 Python에 설치되어 있습니다.

작은 꿈이 글은 이 사건에 대한 자세한 내용입니다.

작은 꿈FMZ에서 검색 데이터를 얻었기 때문에 일시적으로 불가능합니다. 그러나 코드는 오픈 소스이며, 원하는 대로 변경하고 데이터 소스를 대체할 수 있습니다.

작은 꿈`` /* 백테스트 2019-09-21 00:00:00 end: 2019-10-20 00:00:00 기간: 1h [이이드: Bitfinex, currency, BTC_USD] 모드: 1 */ `` 설정 정보의,``mode`` 설정으로, 재검토 페이지에서 설정할 수 있으며, 정책 편집 페이지에서 바로 재검토 설정을 저장하여 설정 정보 문자열에 액세스할 수 있습니다.

후속같은 질문?

크세네이드꼭대기

작은 꿈이 기록은 현재 지원되지 않습니다.

한쪽 길좋아요, 감사합니다.

작은 꿈이 글은 이쪽에서 작성되었습니다.

한쪽 길네, mac os 10.14.4

작은 꿈Mac OSX 운영 체제인가요?

한쪽 길저는 conda로 python 버전을 관리하고 있습니다. 저는 fmz의 python 버전을 다운로드 한 것을 확인했습니다. 그러나 웹 사이트에서 python3를 지원하는 것을 보았지만 시도했을 때 문제가 발생했습니다.

작은 꿈이 패키지가 어디에 설치되었는지 확인해 보세요.

작은 꿈이 게시물은 업데이트 되었습니다. 게시물의 마지막에 있는 예제를 참조하세요.

작은 꿈main 함수가 작성되어 있고, 바로 호출하면 됩니다.

시아오기안 https://github.com/fmzquant/backtest_python/issues/4,看看这个有没有帮助

작은 꿈이 글의 내용은 이쪽 스크린샷에서 확인할 수 있습니다.

시아오기안예를 들어, BTC_USDT로 코드를 변경하면 오류가 발생합니다.

작은 꿈이 문제는 어떤 거래소를 선택하느냐에 달려 있습니다.

작은 꿈이 글은 한 가지 다른 문제와 관련이 있습니다.

작은 꿈FMZ는 팅 아키텍처를 적용하여 프로세스 통제력을 조금 더 강화하고 전략을 작성하는 데 더 유연성을 제공합니다.

작은 꿈''백테스트 2018-02-19 00:00:00 end: 2018-03-22 12:00:00 기간: 15m exchanges: [{"eid":"OKEX","currency":"LTC_BTC","balance":3,"stocks":0}] '' 이 모든 것들은

작은 꿈이 글은 다른 글과 비교해 볼 수 있습니다.

작은 꿈파일 로딩 시작 이 시뮬레이션 계정 구성, 만약 클래스에 적혀 있다면 로딩 안될지 확인합니다.

그래요이 구성은 맞아야 합니다. 왜 클래스 참조를 쓸 수 없나요?

그래요계정 데이터를 검색합니다. 아래 몇 줄인가요? , global function main에서 정상적으로 참조됩니다. 하지만 수업에서 실수를 합니다. ''백테스트 2018-02-19 00:00:00 end: 2018-03-22 12:00:00 기간: 15m exchanges: [{"eid":"OKEX","currency":"LTC_BTC","balance":3,"stocks":0}] '' botvs에서 가져오기 * task = VCtx ((__doc__) # initialize backtest engine from __doc__

작은 꿈`` def GetAccount ((self): r = _ACCOUNT ret = self.lib.api_Exchange_GetAccount ((self.ctx, self.idx, ctypes.byref))) if ret == API_ERR_SUCCESS: return r.toObj (() elif ret == API_ERR_FAILED: 반환 None EOF ((() `` 아래 코드를 보면 api_Exchange_GetAccount라는 DLL의 인터페이스처럼 보이는데, 당신은 오류 메시지를 표시하고, 호출이 성공하지 않았고, 호출이 실패하지 않았으며, EOF를 실행합니다. 당신은 재검토 엔진을 사용했을 때 재검토 계정 데이터를 구성하고 있습니까?

작은 꿈이 방법은 재검토 시스템을 파이썬 라이브러리로 포장하여, 로컬 파이썬이 재검토 정책을 수행할 수 있도록 하는 것입니다.

작은 꿈통신이 있을 수 있고, 재검토시에는 데이터 요청이 있지만, 로컬로 실행되는 재검토 시스템에서 실행된다. `` ''백테스트 2018-02-19 00:00:00 end: 2018-03-22 12:00:00 기간: 15m exchanges: [{"eid":"OKEX","currency":"LTC_BTC","balance":3,"stocks":0}] '' botvs에서 가져오기 * task = VCtx ((__doc__) # initialize backtest engine from __doc__ print exchange.GetAccount (프린트 교환.GetAccount) 인쇄 교환.GetTicker print task.Join ((() # print backtest result [프린트 테스트 결과] `` 이 코드는 마치 정책과 같으며, 리테크 시스템은 리버리로 포장되어 테스트를 실행할 때 리테크 시스템의 기능을 호출합니다. 위의 '' 'backtest... '' 안에는 BotVS 정책에서 생성될 수 있는 재검토 파라미터 설정이다.