avatar of 发明者量化-小小梦 发明者量化-小小梦
Suivre Messages privés
4
Suivre
1271
Abonnés

Explication détaillée des nouvelles fonctionnalités des paramètres de l'interface de stratégie et des commandes interactives

Créé le: 2024-06-26 17:42:51, Mis à jour le: 2024-08-02 16:11:43
comments   0
hits   974

[TOC]

Explication détaillée des nouvelles fonctionnalités des paramètres de l’interface de stratégie et des commandes interactives

Le développement de stratégies sur la plateforme de trading quantitatif Inventor est indissociable de la conception des paramètres de stratégie et des interactions de stratégie. La plateforme de trading quantitatif Inventor s’engage à fournir des outils de trading quantitatif simples, faciles à utiliser et puissants, et à itérer en permanence la conception et les fonctions des produits. En améliorant les « paramètres de stratégie » et les « contrôles d’interaction », la flexibilité de conception des paramètres et des interactions dans la conception de stratégie a été encore accrue. Les fonctions des paramètres de stratégie et des commandes interactives ont été améliorées pour faciliter la réalisation de certaines exigences de conception. Dans cet article, examinons deux aspects essentiels de la conception d’une stratégie : la « conception des paramètres de la stratégie » et la « conception de l’interaction de la stratégie ».

Paramètres de l’interface de stratégie

Les types de paramètres de stratégie dans Inventor Quant n’ont pas augmenté et ce sont toujours les cinq types de paramètres que nous connaissons :

  • Paramètres de type numérique
  • Paramètre de type chaîne
  • Paramètres de type booléen
  • Paramètres de type de liste déroulante
  • Paramètre de type chaîne cryptée

Alors vous me demanderez certainement, quel contenu a été ajouté et optimisé dans cette mise à jour de la plateforme ?

Cette mise à niveau ajoute la « configuration des composants » pour les contrôles de liaison des paramètres, simplifie les fonctions de « regroupement » et de « dépendance des paramètres » et intègre ces deux fonctions dans la « configuration des composants ». Pour la valeur par défaut du paramètre, une option « facultative »/« obligatoire » est ajoutée pour déterminer si la stratégie est qualifiée pour l’opération. Si le paramètre est défini sur « obligatoire » mais qu’aucune valeur spécifique n’est écrite dans le contrôle des paramètres lorsque le la stratégie est exécutée, Paramètres, la stratégie ne peut pas être exécutée pour le moment. Maintenant que nous avons une compréhension générale des changements de mise à niveau, testons-les en détail.

1. Paramètres de type numérique

Explication détaillée des nouvelles fonctionnalités des paramètres de l’interface de stratégie et des commandes interactives

Nous avons brièvement parlé des fonctions « facultatives »/« obligatoires » auparavant, je n’entrerai donc pas dans les détails ici. Ce qui suit explique principalement la « configuration des composants ». Le paramètre de configuration des composants peut être simplement compris comme suit :

Définissez les différentes propriétés, types et règles des contrôles auxquels les paramètres correspondent (sont liés). Le contrôle de limite par défaut pour les paramètres de type numérique (type nombre) est une zone de saisie. Vous pouvez définir des règles pour les données reçues par la zone de saisie, c’est-à-dire utiliser les contrôles « valeur minimale » et « valeur maximale » dans la figure pour définir eux.

En plus du contrôle de zone de saisie par défaut, la plateforme a ajouté :

  • Sélecteur de temps Dans « Type de composant », sélectionnez le paramètre : Sélecteur de temps, et le contrôle de la zone de saisie sur l’interface de stratégie correspondant au paramètre actuel deviendra un contrôle de sélection de temps. Lors du réglage de ce paramètre, sélectionnez une heure spécifique. La valeur variable de ce paramètre est l’horodatage correspondant à l’heure définie. Ces contrôles sont généralement utilisés pour les paramètres de plage de temps, les paramètres de date de début et de fin. Cette utilisation très pratique et intuitive des contrôles de date permet à la stratégie de connaître l’horodatage correspondant, sans avoir besoin d’écrire un code de conversion de temps complexe. La valeur variable du paramètre d’interface est : valeur (représentant l’horodatage)
  • Barre de saisie coulissante Si le curseur est défini comme un contrôle de barre d’entrée coulissante, vous devez spécifier la « valeur minimale » et la « valeur maximale » pour déterminer la plage du curseur. La taille du pas fait référence à la valeur de l’intervalle sur le curseur lorsqu’il se déplace une fois.
    La barre d’entrée coulissante peut très facilement implémenter un paramètre permettant de contrôler les niveaux de stop loss et de take profit. Bien entendu, il peut exister de nombreuses autres conceptions, qui ne seront pas détaillées ici. La valeur variable du paramètre d’interface est : valeur (représentant les informations de position du curseur sur la barre de curseur)

2. Paramètres de type booléen

Explication détaillée des nouvelles fonctionnalités des paramètres de l’interface de stratégie et des commandes interactives

Les paramètres de type booléen sont spéciaux dans la mesure où ils n’ont qu’un seul contrôle correspondant. Il s’agit du contrôle de commutateur par défaut. Et la valeur par défaut du paramètre est également requise.

Étant donné que les valeurs booléennes sont soit vraies, soit fausses, ce sont des options binaires. Il est donc très approprié d’utiliser une commande de commutation pour correspondre à ce type de paramètre.

Généralement, les paramètres de type booléen sont utilisés pour contrôler si certaines fonctions de stratégie sont activées sur la plateforme.

3. Paramètres de type chaîne

Explication détaillée des nouvelles fonctionnalités des paramètres de l’interface de stratégie et des commandes interactives

En plus du contrôle de zone de saisie par défaut, la plateforme a ajouté :

  • texte Dans « Type de composant », sélectionnez le paramètre : Texte. La zone de contrôle de saisie sur l’interface de stratégie correspondant au paramètre actuel se transformera en une zone de texte plus grande. Les différences entre un contrôle de texte et un contrôle de zone de saisie ordinaire sont les suivantes : le texte saisi dans la zone de texte peut être renvoyé à la ligne et la zone de texte peut ajuster la taille du contrôle. La valeur variable du paramètre d’interface est : chaîne.

  • Sélecteur de temps Dans « Type de composant », sélectionnez le paramètre comme : Sélecteur de temps. La zone de contrôle de saisie sur l’interface de stratégie correspondant aux paramètres actuels deviendra une zone de contrôle pour le réglage de l’heure et de la date. Le « Sélecteur d’heure pour le type de composant avec paramètre de type chaîne » est différent du « Sélecteur d’heure pour le type de composant avec paramètre de type numérique ». La sélection d’heure pour le paramètre de type chaîne dispose d’une option « Format d’heure » supplémentaire, qui permet de définir le format d’heure du contrôle. Sélectionnez Format :

    1. Date : lorsque le « Format de l’heure » est défini sur « Date », le contrôle est un contrôle de sélection d’heure complet pour sélectionner l’année, le mois, le jour, l’heure, la minute et la seconde, et prend en charge la sélection en un clic de l’heure actuelle .
    2. Heure : lorsque le « Format de l’heure » est défini sur « Heure », le contrôle est un contrôle de sélection de l’heure permettant de sélectionner les minutes, les heures et les secondes.
    3. Année et mois : lorsque le « Format de l’heure » est défini sur « Année et mois », le contrôle est un contrôle de sélection de l’heure pour sélectionner l’année et le mois.
    4. Année : lorsque le « Format de l’heure » est défini sur « Année », le contrôle est un contrôle de sélection de l’heure permettant de sélectionner une année. La valeur variable du paramètre d’interface est : chaîne (formatée comme l’heure correspondante).
  • Sélecteur de couleurs Dans « Type de composant », sélectionnez le paramètre : Sélecteur de couleurs. Le contrôle de la zone de saisie sur l’interface de stratégie correspondant au paramètre actuel deviendra un contrôle de sélection de couleur. Généralement utilisé pour concevoir des paramètres de définition des couleurs. La valeur variable du paramètre d’interface est : chaîne (la valeur de couleur correspondant à la couleur sélectionnée, par exemple : #7e1717).

4. Paramètres de type liste déroulante

Explication détaillée des nouvelles fonctionnalités des paramètres de l’interface de stratégie et des commandes interactives

Le contrôle par défaut correspondant au paramètre de type de liste déroulante est une liste déroulante, mais cette fois, de nombreuses mises à niveau ont été apportées à la précédente liste déroulante simple à sélection unique :

  • Prise en charge de la sélection multiple Vous pouvez sélectionner plusieurs options en même temps dans le contrôle de liste déroulante correspondant au paramètre de liste déroulante. Dans ce cas, la valeur variable du paramètre de liste déroulante n’est plus l’index de l’option sélectionnée, mais un tableau. Le tableau contient les index ou les données de liaison de toutes les options sélectionnées.
  • Prise en charge des valeurs par défaut personnalisées Lorsque cette option est activée, vous pouvez personnaliser la valeur par défaut au lieu de devoir sélectionner une option dans la liste déroulante comme valeur par défaut.
  • Ajout de la fonction de liaison de valeurs numériques et de chaînes aux options de la liste déroulante. Liez une chaîne ou une valeur à une option. Lorsque vous définissez ce paramètre, la valeur de la variable de liste déroulante n’est plus l’index de l’option sélectionnée, mais la chaîne ou la valeur liée à l’option sélectionnée.

En plus du contrôle de liste déroulante par défaut, la plateforme ajoute cette fois :

  • Contrôleur de segment Dans « Type de composant », sélectionnez le paramètre : Contrôleur de segment. De cette façon, le contrôle lié au paramètre actuel devient un curseur segmenté sélectionnable et vous pouvez sélectionner un bloc segmenté spécifique. Il peut généralement être conçu comme : généralement utilisé pour basculer entre plusieurs options mutuellement exclusives, souvent utilisé pour filtrer le contenu par catégorie ou balise, choisir entre différents modes de fonctionnement, etc. La valeur variable du paramètre d’interface est : l’index de la partie sélectionnée du contrôleur de segment ou les données liées à la partie sélectionnée (les données liées prennent en charge les valeurs numériques et les chaînes).

5. Paramètres de type chaîne cryptée

Explication détaillée des nouvelles fonctionnalités des paramètres de l’interface de stratégie et des commandes interactives

Le paramètre de type de chaîne cryptée est également spécial et n’a qu’un seul contrôle correspondant. Il s’agit du contrôle de zone de saisie cryptée par défaut.

Sur la plateforme, les contrôles de type chaîne cryptée sont généralement utilisés pour définir certaines informations sensibles, telles que les clés secrètes, les mots de passe, etc. Ces valeurs de paramètres d’entrée seront transmises après avoir été cryptées localement.

La valeur variable du paramètre d’interface est : chaîne.

Pour tous les types de paramètres d’interface de stratégie ci-dessus, cette mise à niveau intègre les fonctions précédentes de « regroupement de paramètres » et de « dépendance de paramètres » dans la « configuration des composants ». Il existe des paramètres « Groupement » et « Filtre » dans la configuration des composants de tous les paramètres d’interface.

  • Regroupement Vous pouvez saisir directement les étiquettes que vous souhaitez regrouper dans la liste déroulante du groupe et utiliser la touche Entrée pour confirmer la saisie du groupe. Le système enregistrera l’étiquette actuellement saisie dans les options de regroupement. Vous pouvez ensuite affecter des groupes aux paramètres d’interface actuels. Après le regroupement, sur l’interface de backtesting de stratégie/trading réel, les paramètres marqués comme groupe seront affichés dans une zone de regroupement.

  • Filtres Entrez quelques expressions dans le contrôle de filtre pour déterminer si le paramètre actuel doit être activé et affiché. Cette fonction permet d’afficher ou de masquer le paramètre actuel en fonction d’un certain réglage de paramètre. Exemples d’expressions de filtrage :

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

Ici, a et b représentent tous deux des variables des paramètres de l’interface de stratégie.

Stratégie de test des paramètres d’interface

Si les explications ci-dessus ne sont pas très intuitives, la meilleure façon de les comprendre est d’utiliser et de tester ces fonctions de paramètres :

Prenons comme exemple la politique linguistique de 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))
}

Explication détaillée des nouvelles fonctionnalités des paramètres de l’interface de stratégie et des commandes interactives

Stratégie complète de test des paramètres : https://www.fmz.com/strategy/455212

Il existe une conception de dépendance de paramètres cachée dans les paramètres ci-dessus. De nombreuses stratégies nécessitent d’activer une série de paramètres basés sur un certain paramètre, ce qui peut être réalisé avec des dépendances de paramètres comme celle-ci.

Commandes interactives

Il existe également cinq types de contrôles interactifs de stratégie dans la plateforme de trading quantitatif Inventor, et ces contrôles interactifs ont également été optimisés et mis à niveau cette fois. Ajout de « configuration des composants » pour simplifier la fonction de regroupement.

1. Commandes interactives numériques

Explication détaillée des nouvelles fonctionnalités des paramètres de l’interface de stratégie et des commandes interactives

Les contrôles interactifs sont fondamentalement les mêmes que la « configuration des composants » des paramètres de l’interface de stratégie. En plus des contrôles de zone de saisie par défaut, les types de composants prennent également en charge :

  • Sélecteur de temps La commande interactive envoyée contient un horodatage de l’heure de sélection.
  • Barre de saisie coulissante La commande interactive envoyée contient la valeur représentée par la position du curseur sélectionnée.

L’utilisation est la même que celle des différents types de composants des paramètres d’interface de stratégie, elle ne sera donc pas répétée ici.

2. Contrôles interactifs booléens (vrai/faux)

Explication détaillée des nouvelles fonctionnalités des paramètres de l’interface de stratégie et des commandes interactives

Les contrôles interactifs sont fondamentalement les mêmes que la « configuration des composants » des paramètres de l’interface de stratégie.

3. Contrôles interactifs de chaîne

Explication détaillée des nouvelles fonctionnalités des paramètres de l’interface de stratégie et des commandes interactives

En plus du contrôle de zone de saisie par défaut, le type de composant prend également en charge :

  • texte La commande interactive envoyée contient le contenu saisi dans la zone de texte.
  • Sélecteur de temps La commande interactive envoyée contient une chaîne horaire de l’heure sélectionnée, avec plusieurs formats parmi lesquels choisir.
  • Sélecteur de couleurs La commande interactive envoyée contient la chaîne de valeur de couleur de la couleur sélectionnée.

4. Contrôle interactif de la liste déroulante (sélectionnée)

Explication détaillée des nouvelles fonctionnalités des paramètres de l’interface de stratégie et des commandes interactives

La liste déroulante du contrôle interactif a également été mise à niveau : « prise en charge de plusieurs sélections », « valeurs par défaut personnalisées », liaison d’options à des données spécifiques, etc.

En plus du composant de liste déroulante par défaut, les éléments suivants sont ajoutés :

  • Contrôleur de segment La commande interactive envoyée contient l’index ou les données liées du curseur sélectionné.

5. Bouton de contrôle interactif

Explication détaillée des nouvelles fonctionnalités des paramètres de l’interface de stratégie et des commandes interactives

Un contrôle interactif de type bouton ne comporte aucun élément d’entrée. Lorsqu’elle est déclenchée, la commande interactive envoyée contient uniquement le nom du contrôle bouton.

Stratégie de test de contrôle interactif

La meilleure façon de le comprendre est de le tester manuellement. Une stratégie de test est également préparée ici.

Il convient de noter que les contrôles interactifs ne peuvent pas être testés dans le système de backtesting et que seuls des tests en temps réel peuvent être créés.

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

Entrez des informations de manière aléatoire, définissez des options, puis cliquez sur le bouton de commande interactif pour générer des messages interactifs. La stratégie capture les messages et les imprime. Explication détaillée des nouvelles fonctionnalités des paramètres de l’interface de stratégie et des commandes interactives

Explication détaillée des nouvelles fonctionnalités des paramètres de l’interface de stratégie et des commandes interactives

Stratégie de test de contrôle interactif terminée : https://www.fmz.com/strategy/455231

renouveler

  1. La plateforme a mis à jour le type de chaîne et le type de liste déroulante des paramètres d’interface et des contrôles interactifs ; et a ajouté la prise en charge de 2 nouveaux contrôles :

Explication détaillée des nouvelles fonctionnalités des paramètres de l’interface de stratégie et des commandes interactives

Explication détaillée des nouvelles fonctionnalités des paramètres de l’interface de stratégie et des commandes interactives

  1. Test des paramètres d’utilisation du contrôle des devises et du contrôle du code de négociation (paire de négociation) dans les paramètres de l’interface de stratégie

Explication détaillée des nouvelles fonctionnalités des paramètres de l’interface de stratégie et des commandes interactives

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

Explication détaillée des nouvelles fonctionnalités des paramètres de l’interface de stratégie et des commandes interactives

  参数test1使用币种控件选择后,test1的值为: BTC
  • 2. Code de trading (paire de trading)

Explication détaillée des nouvelles fonctionnalités des paramètres de l’interface de stratégie et des commandes interactives

  参数test2使用交易代码控件选择后,test2的值为: ETH_USDT.next_quarter
  1. Configurez des tests interactifs à l’aide de contrôles de devises et de contrôles de codes de transaction (paire de transactions) dans les contrôles d’interaction de stratégie :

Explication détaillée des nouvelles fonctionnalités des paramètres de l’interface de stratégie et des commandes interactives

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

Explication détaillée des nouvelles fonctionnalités des paramètres de l’interface de stratégie et des commandes interactives

  test1:SOL
  • 2. Code de trading (paire de trading)

Explication détaillée des nouvelles fonctionnalités des paramètres de l’interface de stratégie et des commandes interactives

  test2:XRP_USDT.swap