avatar of 发明者量化-小小梦 发明者量化-小小梦
집중하다 사신
4
집중하다
1271
수행원

전략 인터페이스 매개변수 및 대화형 컨트롤의 새로운 기능에 대한 자세한 설명

만든 날짜: 2024-06-26 17:42:51, 업데이트 날짜: 2024-08-02 16:11:43
comments   0
hits   967

[TOC]

전략 인터페이스 매개변수 및 대화형 컨트롤의 새로운 기능에 대한 자세한 설명

Inventor Quantitative Trading Platform에서 전략을 개발하는 것은 전략 매개변수와 전략 상호 작용을 설계하는 것과 분리할 수 없습니다. Inventor 양적 거래 플랫폼은 간단하고 사용하기 쉬우며 강력한 양적 거래 도구를 제공하고 제품 설계와 기능을 지속적으로 반복하는 데 전념합니다. ‘전략 매개변수’와 ‘상호작용 컨트롤’을 업그레이드함으로써 전략 설계에서 매개변수와 상호 작용의 디자인 유연성이 더욱 높아졌습니다. 일부 디자인 요구 사항을 보다 쉽게 ​​달성할 수 있도록 전략 매개변수와 대화형 컨트롤의 기능이 향상되었습니다. 이 글에서는 전략 설계의 두 가지 필수적인 측면, 즉 “전략 매개변수 설계”와 “전략 상호작용 설계”를 살펴보겠습니다.

전략 인터페이스 매개변수

Inventor Quant의 전략 매개변수 유형은 증가하지 않았으며 여전히 우리에게 익숙한 5가지 유형의 매개변수를 유지합니다.

  • 숫자형 매개변수
  • 문자열 유형 매개 변수
  • 부울 형식 매개변수
  • 드롭다운 상자 유형 매개변수
  • 암호화된 문자열 유형 매개변수

그러면 여러분은 분명 저에게 이렇게 묻겠죠. 이 플랫폼 업데이트에서 어떤 콘텐츠가 추가되고 최적화되었나요?

이 업그레이드는 매개변수 바인딩 컨트롤을 위한 “구성 요소 구성”을 추가하고, “그룹화” 및 “매개변수 종속성” 기능을 간소화하며, 이 두 가지 기능을 “구성 요소 구성”에 통합합니다. 매개변수의 기본값에 대해 “선택 사항”/“필수” 옵션이 추가되어 전략이 운영에 적합한지 여부를 판별합니다. 매개변수가 “필수”로 설정되어 있지만 매개변수 제어에 특정 값이 기록되지 않은 경우 전략이 실행되었습니다. 매개변수가 없으므로 지금은 전략을 실행할 수 없습니다. 이제 업그레이드 변경 사항에 대한 전반적인 이해를 얻었으므로 이를 자세히 테스트해 보겠습니다.

1. 숫자형 매개변수

전략 인터페이스 매개변수 및 대화형 컨트롤의 새로운 기능에 대한 자세한 설명

우리는 이전에 “선택적”/“필수” 기능에 대해 간략히 이야기했으므로 여기서는 자세히 설명하지 않겠습니다. 다음은 주로 “구성 요소 구성”을 설명합니다. 구성 요소 구성 설정은 다음과 같이 간단히 이해할 수 있습니다.

매개변수에 대응(바인딩)되는 컨트롤의 다양한 속성, 유형 및 규칙을 설정합니다. 숫자 유형 매개변수(숫자 유형)에 대한 기본 바운드 컨트롤은 입력 상자입니다. 입력 상자에서 수신한 데이터에 대한 규칙을 설정할 수 있습니다. 즉, 그림에서 “최소값” 및 “최대값” 컨트롤을 사용하여 설정합니다. 그들을.

기본 입력 상자 컨트롤 외에도 플랫폼에는 다음이 추가되었습니다.

  • 시간 선택기 “구성 요소 유형”에서 설정을 “시간 선택기”로 선택하면 현재 매개변수에 해당하는 전략 인터페이스의 입력 상자 컨트롤이 시간 선택 컨트롤이 됩니다. 이 매개변수를 설정할 때 특정 시간을 선택합니다. 이 매개변수의 변수 값은 설정된 시간에 해당하는 타임스탬프입니다. 이러한 컨트롤은 일반적으로 시간 범위 설정, 시작 및 종료 날짜 설정에 사용됩니다. 날짜 컨트롤의 매우 편리하고 직관적인 사용을 통해 전략은 복잡한 시간 변환 코드를 작성할 필요 없이 해당 타임스탬프를 알 수 있습니다. 인터페이스 매개변수의 변수 값은 다음과 같습니다: value(타임스탬프를 나타냄)
  • 슬라이드 입력 바 슬라이딩 입력 막대 컨트롤로 설정된 경우 슬라이더의 범위를 결정하려면 “최소값”과 “최대값”을 지정해야 합니다. 단계 크기는 슬라이더가 한 번 움직일 때의 간격 값을 말합니다.
    슬라이딩 입력 막대는 손절매와 이익 실현 수준을 제어하기 위한 매개변수를 매우 편리하게 구현할 수 있습니다. 물론, 여기서 자세히 설명하지 않을 다른 디자인이 많이 있을 수 있습니다. 인터페이스 매개변수의 변수 값은 다음과 같습니다: value (슬라이더 바에 있는 슬라이더의 위치 정보를 나타냄)

2. Boolean 유형 매개변수

전략 인터페이스 매개변수 및 대화형 컨트롤의 새로운 기능에 대한 자세한 설명

부울 유형 매개변수는 해당 컨트롤이 단 하나뿐이라는 점에서 특별합니다. 기본 스위치 컨트롤입니다. 그리고 매개변수의 기본값도 필요합니다.

부울 값은 참이거나 거짓이므로 이진 옵션입니다. 따라서 이 매개변수 유형에 맞게 스위치 컨트롤을 사용하는 것이 매우 적합합니다.

일반적으로 부울 유형 매개변수는 플랫폼에서 특정 전략 기능이 활성화되는지 여부를 제어하는 ​​데 사용됩니다.

3. 문자열 유형 매개 변수

전략 인터페이스 매개변수 및 대화형 컨트롤의 새로운 기능에 대한 자세한 설명

기본 입력 상자 컨트롤 외에도 플랫폼에는 다음이 추가되었습니다.

  • 텍스트 “구성 요소 유형”에서 설정을 선택하세요: 텍스트. 현재 매개변수에 해당하는 전략 인터페이스의 입력 상자 컨트롤이 더 큰 텍스트 상자로 변경됩니다. 텍스트 컨트롤과 일반 입력 상자 컨트롤의 차이점은 텍스트 상자에 입력된 텍스트가 줄바꿈될 수 있고 텍스트 상자가 컨트롤의 크기를 조절할 수 있다는 것입니다. 인터페이스 매개변수의 변수 값은 문자열입니다.

  • 시간 선택기 “구성 요소 유형”에서 설정을 시간 선택기로 선택하세요. 현재 매개변수에 해당하는 전략 인터페이스의 입력 상자 컨트롤은 시간과 날짜를 설정하는 컨트롤이 됩니다. “문자열 유형 매개변수가 있는 구성 요소 유형의 시간 선택기”는 “숫자 유형 매개변수가 있는 구성 요소 유형의 시간 선택기”와 다릅니다. 문자열 유형 매개변수의 시간 선택에는 컨트롤의 선택을 설정할 수 있는 추가 “시간 형식” 옵션이 있습니다. 체재:

    1. 날짜: “시간 형식”이 “날짜”로 설정된 경우 컨트롤은 년, 월, 일, 시, 분, 초를 선택하기 위한 완전한 시간 선택 컨트롤이며 현재 시간을 한 번의 클릭으로 선택할 수 있습니다. .
    2. 시간: “시간 형식”이 “시간”으로 설정된 경우, 컨트롤은 분, 시, 초를 선택하기 위한 시간 선택 컨트롤입니다.
    3. 년 및 월: “시간 형식”이 “년 및 월”로 설정된 경우, 컨트롤은 년 및 월을 선택하기 위한 시간 선택 컨트롤입니다.
    4. 년: “시간 형식”이 “년”으로 설정된 경우, 컨트롤은 년도를 선택하기 위한 시간 선택 컨트롤입니다. 인터페이스 매개변수의 변수 값은 문자열(해당 시간으로 형식 지정)입니다.
  • 색상 선택기 “구성 요소 유형”에서 설정: 색상 선택기를 선택하세요. 현재 매개변수에 해당하는 전략 인터페이스의 입력 상자 컨트롤이 색상 선택 컨트롤이 됩니다. 일반적으로 색상 설정을 위한 매개변수를 설계하는 데 사용됩니다. 인터페이스 매개변수의 변수 값은 문자열(선택한 색상에 해당하는 색상 값, 예: #7e1717)입니다.

4. 드롭다운 상자 유형 매개변수

전략 인터페이스 매개변수 및 대화형 컨트롤의 새로운 기능에 대한 자세한 설명

드롭다운 상자 유형 매개변수에 해당하는 기본 컨트롤은 드롭다운 상자이지만 이번에는 이전의 간단한 단일 선택 드롭다운 상자에 많은 업그레이드가 이루어졌습니다.

  • 다중 선택 지원 드롭다운 상자 매개변수에 해당하는 드롭다운 상자 컨트롤에서 동시에 여러 옵션을 선택할 수 있습니다. 이 경우 드롭다운 상자 매개변수의 변수 값은 더 이상 선택한 옵션의 인덱스가 아니지만 배열. 배열에는 선택된 모든 옵션의 인덱스 또는 바인딩 데이터가 포함되어 있습니다.
  • 사용자 정의 기본값 지원 이 옵션을 켜면 드롭다운 상자에서 옵션을 기본값으로 선택하는 대신 기본값을 사용자 지정할 수 있습니다.
  • 드롭다운 상자 옵션에 숫자값과 문자열을 바인딩하는 기능을 추가했습니다. 문자열이나 값을 옵션에 바인딩합니다. 이 매개변수를 설정할 때 드롭다운 상자 변수의 값은 더 이상 선택한 옵션의 인덱스가 아니라 선택한 옵션에 바인딩된 문자열이나 값입니다.

기본 드롭다운 상자 컨트롤 외에도 이번에 플랫폼에는 다음이 추가되었습니다.

  • 세그먼트 컨트롤러 “구성 요소 유형”에서 설정: 세그먼트 컨트롤러를 선택합니다. 이런 방식으로, 현재 매개변수에 바인딩된 컨트롤이 선택 가능한 세그먼트 슬라이더가 되고, 특정 세그먼트 블록을 선택할 수 있습니다. 일반적으로 다음과 같이 설계할 수 있습니다. 일반적으로 여러 가지 상호 배타적 옵션 간에 전환하는 데 사용되며, 종종 카테고리나 태그로 콘텐츠를 필터링하고, 다양한 작업 모드 간에 선택하는 데 사용됩니다. 인터페이스 매개변수의 변수 값은 세그먼트 컨트롤러의 선택된 부분의 인덱스 또는 선택된 부분에 바인딩된 데이터입니다(바인딩된 데이터는 숫자 값과 문자열을 지원합니다).

5. 암호화된 문자열 유형 매개변수

전략 인터페이스 매개변수 및 대화형 컨트롤의 새로운 기능에 대한 자세한 설명

암호화된 문자열 유형 매개변수도 특별하며, 해당 컨트롤이 하나뿐입니다. 이는 기본 암호화된 입력 상자 컨트롤입니다.

플랫폼에서 암호화된 문자열 유형의 컨트롤은 일반적으로 비밀 키, 비밀번호 등과 같은 일부 민감한 정보를 설정하는 데 사용됩니다. 이러한 입력 매개변수 값은 로컬에서 암호화된 후 전송됩니다.

인터페이스 매개변수의 변수 값은 문자열입니다.

위의 모든 유형의 전략 인터페이스 매개변수에 대해 이 업그레이드는 이전의 “매개변수 그룹화” 및 “매개변수 종속성” 기능을 “구성 요소 구성”으로 통합합니다. 모든 인터페이스 매개변수의 구성 요소 구성에는 “그룹화” 및 “필터” 설정이 있습니다.

  • 그룹화 그룹화하려는 라벨을 그룹 드롭다운 상자 컨트롤에 직접 입력하고 Enter 키를 사용하여 그룹 입력을 확인할 수 있습니다. 시스템은 현재 입력된 라벨을 그룹화 옵션에 기록합니다. 그런 다음 현재 인터페이스 매개변수에 그룹을 할당할 수 있습니다. 그룹화 후, 전략 백테스팅/실제 거래 인터페이스에서 그룹으로 표시된 매개변수는 그룹화 영역에 표시됩니다.

  • 필터 필터 컨트롤에 일부 표현식을 입력하여 현재 매개변수를 활성화하고 표시해야 하는지 여부를 확인합니다. 이 기능을 사용하면 특정 매개변수 설정에 따라 현재 매개변수를 표시하거나 숨길 수 있습니다. 필터 표현식 예:

  过滤器格式: a>b , a==1 , a , !a , a>=1&&a<=10 , a>b

여기서 a와 b는 모두 전략 인터페이스 매개변수의 변수를 나타냅니다.

인터페이스 매개변수 테스트 전략

위의 설명이 다소 직관적이지 않다면 이를 이해하는 가장 좋은 방법은 실제로 이러한 매개변수 함수를 사용하고 테스트하는 것입니다.

예를 들어 JavaScript 언어 정책을 살펴보겠습니다.

function main() {
    Log("---------------------------开始测试数字类型参数---------------------------")
    Log("变量pNum1:", pNum1, ", 变量值类型:", typeof(pNum1))
    Log("变量pNum2:", pNum2, ", 变量值类型:", typeof(pNum2))
    Log("变量pNum3:", pNum3, ", 变量值类型:", typeof(pNum3))
    Log("变量pNum4:", pNum4, ", 变量值类型:", typeof(pNum4))
    
    Log("---------------------------开始测试布尔类型参数---------------------------")
    Log("变量pBool1:", pBool1, ", 变量值类型:", typeof(pBool1))
    Log("变量pBool2:", pBool2, ", 变量值类型:", typeof(pBool2))

    Log("---------------------------开始测试字符串类型参数---------------------------")
    Log("变量pStr1:", pStr1, ", 变量值类型:", typeof(pStr1))
    Log("变量pStr2:", pStr2, ", 变量值类型:", typeof(pStr2))
    Log("变量pStr3:", pStr3, ", 变量值类型:", typeof(pStr3))
    Log("变量pStr4:", pStr4, ", 变量值类型:", typeof(pStr4))

    Log("---------------------------开始测试下拉框类型参数---------------------------")
    Log("变量pCombox1:", pCombox1, ", 变量值类型:", typeof(pCombox1))
    Log("变量pCombox2:", pCombox2, ", 变量值类型:", typeof(pCombox2))
    Log("变量pCombox3:", pCombox3, ", 变量值类型:", typeof(pCombox3))

    Log("---------------------------开始测试加密串类型参数---------------------------")
    Log("变量pSecretStr1:", pSecretStr1, ", 变量值类型:", typeof(pSecretStr1))
}

전략 인터페이스 매개변수 및 대화형 컨트롤의 새로운 기능에 대한 자세한 설명

전체 매개변수 테스트 전략: https://www.fmz.com/strategy/455212

위의 매개변수에는 매개변수 종속성 디자인이 숨겨져 있습니다. 많은 전략에는 특정 매개변수에 기반한 일련의 설정을 활성화해야 하는 요구 사항이 있으며, 이는 이와 같은 매개변수 종속성을 통해 달성할 수 있습니다.

대화형 컨트롤

Inventor Quantitative Trading Platform에는 5가지 유형의 전략적 대화형 컨트롤이 있으며, 이러한 대화형 컨트롤도 이번에 최적화되고 업그레이드되었습니다. 그룹화 기능을 단순화하기 위해 “구성 요소 구성”을 추가했습니다.

1. 디지털 상호작용 제어

전략 인터페이스 매개변수 및 대화형 컨트롤의 새로운 기능에 대한 자세한 설명

대화형 컨트롤은 기본적으로 전략 인터페이스 매개변수의 “구성 요소 구성”과 동일합니다. 기본 입력 상자 컨트롤 외에도 구성 요소 유형은 다음을 지원합니다.

  • 시간 선택기 전송된 대화형 명령에는 선택 시간의 타임스탬프가 포함되어 있습니다.
  • 슬라이드 입력 바 전송된 대화형 명령에는 선택된 슬라이더 위치가 나타내는 값이 포함되어 있습니다.

사용법은 전략 인터페이스 매개변수의 다양한 구성 요소 유형과 동일하므로 여기서는 반복해서 설명하지 않습니다.

2. 부울(참/거짓) 대화형 컨트롤

전략 인터페이스 매개변수 및 대화형 컨트롤의 새로운 기능에 대한 자세한 설명

상호작용 컨트롤은 기본적으로 전략 인터페이스 매개변수의 “구성 요소 구성”과 동일합니다.

3. 문자열 대화형 컨트롤

전략 인터페이스 매개변수 및 대화형 컨트롤의 새로운 기능에 대한 자세한 설명

기본 입력 상자 컨트롤 외에도 구성 요소 유형은 다음을 지원합니다.

  • 텍스트 전송된 대화형 명령에는 텍스트 상자에 입력된 내용이 포함되어 있습니다.
  • 시간 선택기 전송된 대화형 명령에는 선택한 시간의 시간 문자열이 포함되어 있으며, 선택할 수 있는 여러 형식이 있습니다.
  • 색상 선택기 전송된 대화형 명령에는 선택한 색상의 색상 값 문자열이 포함되어 있습니다.

4. 드롭다운 박스(선택) 상호작용 컨트롤

전략 인터페이스 매개변수 및 대화형 컨트롤의 새로운 기능에 대한 자세한 설명

대화형 컨트롤의 드롭다운 상자도 업그레이드되었습니다: “다중 선택 지원”, “사용자 정의 기본값”, 특정 데이터에 대한 옵션 바인딩 등.

기본 드롭다운 상자 구성 요소 외에 다음이 추가되었습니다.

  • 세그먼트 컨트롤러 전송된 대화형 명령에는 선택된 슬라이더의 인덱스 또는 바인딩된 데이터가 포함되어 있습니다.

5. 버튼 상호작용 제어

전략 인터페이스 매개변수 및 대화형 컨트롤의 새로운 기능에 대한 자세한 설명

버튼 유형의 대화형 컨트롤에는 입력 항목이 없습니다. 트리거되면 전송된 대화형 명령에는 버튼 컨트롤 이름만 포함됩니다.

대화형 제어 테스트 전략

이를 이해하는 가장 좋은 방법은 수동으로 테스트하는 것입니다. 테스트 전략도 여기에 준비되어 있습니다.

백테스팅 시스템에서는 대화형 컨트롤을 테스트할 수 없으며, 실시간 테스트만 만들 수 있다는 점에 유의하세요.

function main() {
    var lastCmd = ""
    while (true) {
        var cmd = GetCommand()  // 接收交互控件产生的消息
        if (cmd) {
            Log(cmd)
            lastCmd = cmd
        }
        LogStatus(_D(), lastCmd)
        Sleep(500)
    }
}

무작위로 일부 정보를 입력하고, 일부 옵션을 설정한 다음, 대화형 제어 버튼을 클릭하여 대화형 메시지를 생성합니다. 전략은 메시지를 캡처하여 인쇄합니다. 전략 인터페이스 매개변수 및 대화형 컨트롤의 새로운 기능에 대한 자세한 설명

전략 인터페이스 매개변수 및 대화형 컨트롤의 새로운 기능에 대한 자세한 설명

완료된 상호 작용 제어 테스트 전략: https://www.fmz.com/strategy/455231

고쳐 쓰다

  1. 플랫폼은 인터페이스 매개변수와 대화형 컨트롤의 문자열 유형과 드롭다운 상자 유형을 업데이트했으며 2개의 새로운 컨트롤에 대한 지원을 추가했습니다.

전략 인터페이스 매개변수 및 대화형 컨트롤의 새로운 기능에 대한 자세한 설명

전략 인터페이스 매개변수 및 대화형 컨트롤의 새로운 기능에 대한 자세한 설명

  1. 전략 인터페이스 매개변수에서 통화 제어 및 거래 코드(거래 쌍) 제어를 사용하는 매개변수 테스트

전략 인터페이스 매개변수 및 대화형 컨트롤의 새로운 기능에 대한 자세한 설명

function main() {
    Log("参数test1使用币种控件选择后,test1的值为:", test1)
    Log("参数test2使用交易代码控件选择后,test2的值为:", test2)
}
  • 1. 화폐

전략 인터페이스 매개변수 및 대화형 컨트롤의 새로운 기능에 대한 자세한 설명

  参数test1使用币种控件选择后,test1的值为: BTC
  • 2. 거래 코드(거래 쌍)

전략 인터페이스 매개변수 및 대화형 컨트롤의 새로운 기능에 대한 자세한 설명

  参数test2使用交易代码控件选择后,test2的值为: ETH_USDT.next_quarter
  1. 전략 상호작용 컨트롤에서 통화 컨트롤과 거래 코드(거래 쌍) 컨트롤을 사용하여 대화형 테스트를 설정합니다.

전략 인터페이스 매개변수 및 대화형 컨트롤의 새로운 기능에 대한 자세한 설명

function main() {
    while (true) {
        var cmd = GetCommand()
        if (cmd) {
            Log(cmd)
        }
        Sleep(2000)
    }
}
  • 1. 화폐

전략 인터페이스 매개변수 및 대화형 컨트롤의 새로운 기능에 대한 자세한 설명

  test1:SOL
  • 2. 거래 코드(거래 쌍)

전략 인터페이스 매개변수 및 대화형 컨트롤의 새로운 기능에 대한 자세한 설명

  test2:XRP_USDT.swap