
이 시리즈의 이전 장을 공부하면 기본적으로 다양한 유형의 시각화 모듈을 사용하는 방법을 익힐 수 있습니다. 이번 장에서는 시각화 모듈을 사용하여 구축한 간단하지만 흥미로운 전략을 살펴보겠습니다.
전략의 핵심은 상승장을 쫓아가 하락장에 매도하는 것이며, 해당 시장은 BTC와 같은 디지털 화폐 현물 시장입니다._USDT는 전략이 실행될 때 현재 가격을 기준으로 가격이 특정 비율로 상승하면 현재 자산(분모 통화)의 특정 비율이 매수됩니다. 마찬가지로 가격이 특정 비율로 하락하면 특정 현재 자산(코인)의 퍼센트가 판매됩니다. 주제.
빌드를 시작하기 전에 재사용 가능한 모듈을 추가해 보겠습니다.

위 그림에서 보이는 바와 같이:
클래스 라이브러리 열에는 검사 후 사용할 수 있는 재사용 가능한 패키지된 클래스 라이브러리가 있습니다. 선택된 “암호화폐 현물 거래 라이브러리”는 암호화폐 현물 시장을 위한 거래 라이브러리입니다. 주문을 한 후 복잡한 감지 및 재시도 로직을 처리합니다(예: 주문을 한 후 실행되지 않는 주문을 처리하는 방법 등). ). 전략을 구축할 때 복잡한 처리 논리가 많이 생략되어 매우 편리합니다.

전략적 아이디어가 매우 간단하기 때문에 전략 모듈은 전체적으로 구성 시 그다지 크지 않습니다. 저희의 백테스팅은 2018년 10월에 시작되었습니다. 1년도 채 되지 않아 크고 작은 충격과 추세 시장이 나타났고, 이를 통해 전략에 대한 예비 테스트가 이루어졌습니다. 백테스팅 매개변수:

이 전략의 백테스트 성과를 살펴보세요.

여기에서는 동등한 JavaScript 언어 전략도 공개되어 있으며, 관심 있는 학생들은 이를 공부할 수 있습니다. 시각적 모듈을 사용하여 전략을 구축하는 방법과 전략을 구상하고 다양한 인터페이스를 사용하는 방법을 배우면서 프로그래밍 방식 거래를 매우 쉽게 시작할 수 있었습니다.
이 전략에는 다른 인터페이스 매개변수가 없으며, 관심이 있는 학생은 이를 최적화하고 확장할 수 있습니다.
function main() {
var basePrice = -1
var addRatio = 0.02
while (true) {
var ticker = exchange.GetTicker()
if (basePrice == -1) {
basePrice = ticker.Last
}
if ((ticker.Last - basePrice) > 0 && ((ticker.Last - basePrice) / basePrice > addRatio)) {
var acc = exchange.GetAccount()
var amount = acc.Balance * addRatio / ticker.Last
$.Buy(amount)
basePrice = ticker.Last
}
if ((ticker.Last - basePrice) < 0 && ((basePrice - ticker.Last) / basePrice > addRatio)) {
var acc = exchange.GetAccount()
var amount = acc.Stocks * addRatio
$.Sell(amount)
basePrice = ticker.Last
}
}
}
이 전략의 흥미로운 점은 계정 자산이 처음에는 BTC와 같은 통화의 가치와 동일하게 설정된다는 것입니다._USDT 거래 페어, 현재 BTC 가격은 10,000이고 계정 통화는 5로 할당되며 USDT는 50,000으로 할당됩니다.
이 전략은 시장 상황과 가격 변동에 대해 중립적인 태도를 취합니다. USDT를 줄이고 코인을 늘려보세요. 예를 들어:

백테스팅에 눈에 띄는 변화가 있었습니다.
USDT를 더 많이 설정하고 코인을 덜 설정할 수도 있습니다.

모듈을 조합하여 프로그램된 거래에 대한 나만의 아이디어를 시도해 보세요.
시각화 예시 전략:
더 많은 전략은 https://www.fmz.com/square에서 확인할 수 있습니다.
이 시리즈의 다른 기사
지루한 프로그래밍도 빌딩 블록을 사용하면 쉽게 완성할 수 있습니다. 시도해보세요, 매우 흥미롭습니다!