Les ressources ont été chargées... Je charge...

Docteur MyLanguage

Auteur:L'inventeur de la quantification - un petit rêve, Créé: 2022-06-30 18:24:06, mis à jour: 2024-02-06 17:36:19

(2)Après l'envoi du signal BP, le BARSBP de la ligne K renvoie au nombre de périodes allant de la ligne K pour les positions d'achat et de clôture à la ligne K courante.Si la condition de BARSBP>=1 est satisfaite, la valeur est HHV(H, BARSBP+1), c'est-à-dire la valeur maximale des positions d'achat et de clôture (y compris la ligne K courante lorsque le signal de clôture apparaît) au prix le plus élevé actuel. 3.AA:=IFELSE(BARSBP>=1,REF(C,BARSBP),C);//Prenez le prix de clôture de la dernière ligne K pour acheter et fermer la position: (1) Lorsque le BARSBP de la ligne K courante qui envoie le signal BP renvoie nul, alors lorsque la ligne K ne répond pas à la condition de BARSBP>=1, AA renvoie au prix de clôture de la ligne K courante. (2) La ligne K BARSBP, après l'envoi du signal BP, renvoie au numéro de période de la ligne K pour acheter et fermer la position à partir de la ligne K en cours, puis AA renvoie à REF ((C, BARSBP), qui est le prix de clôture de la ligne K de clôture. (3)Par exemple: trois lignes K: 1, 2 et 3, la ligne K dans 1 est la ligne K actuelle du signal de clôture, puis revient au prix de clôture de la ligne K actuelle, et la ligne AA dans 2 et 3 revient au prix de clôture de la ligne K dans 1. Je ne sais pas.

  • REFSIG_VO

    Retourne le nombre de lots de signal pour le N° signal Sig fixe compté à partir de la ligne K courante (les ordres inversés prennent le nombre de lots de positions ouvertes).

    Utilisation:REFSIG_VOL(Sig,N);, détermine la taille du lot du chiffre de la N° signale fixe à partir de la ligne actuelle K. S'il n'y a pas de signal sig, ou s'il n'y a pas de signal sig fixe, la fonction retourne 0.

    Commentaires: 1.Les signaux supportés par la position Sig sont:BK, SK, BP, SP, BPK, SPK,CLOSEOUT,STOPJe suis désolée. 2.Si le compte à rebours jusqu'au n° signal Sig fixe est sur la ligne K courante, la fonction revient au lot de signal courant. 4.Lorsque N est égal à 0 ou nul, la fonction renvoie 0. 5.Le paramètre N prend en charge les variables.

    Exemples:

    // If there are 5 K-lines from the current K-line where the third fixed BK signal is located from the bottom of the current K-line, and the number of signal lots is greater than 2, close all positions
    REFSIG_PLACE(BK,3)=5&&REFSIG_VOL(BK,3)>2,SP(BKVOL);
    
  • REFSIG_PRICE

    Retourne au prix du signal du n° signal Sig fixe depuis le début de la ligne K courante.

    Utilisation:REFSIG_PRICE(Sig,N);, détermine le prix du signal du n° signal Sig fixe à partir de la ligne K actuelle.

    Commentaires: 1.Les signaux supportés par la position Sig sont:BK, SK, BP, SP, BPK, SPK,CLOSEOUT,STOPJe suis désolée. 2.S'il y a un signal Sig fixe sur la ligne K courante, alors, lorsque la fonction calcule le signal, le signal de la ligne K courante est inclus. 3.Lorsque N est égal à 0 ou nul, la fonction renvoie nul. 4.Le paramètre N prend en charge les variables.

    Exemples:

    // If the opening price of the 3rd last fixed BK signal from the current K-line is 3000, and the long position is greater than 0, sell and close the position
    REFSIG_PRICE(BK,3)=3000&&BKVOL>0,SP;
    
  • Compte

    Comptez le nombre de signaux X en N périodes.

    Utilisation:COUNTSIG(X,N);Comptez le nombre de signaux X en N périodes. X peut êtreBK, SK, SP, BP, SPK, BPK ,CLOSEOUT,STOP.

    Commentaires: 1.Au cours de la période statistique, (1) Contient la ligne K actuelle. (2) Si N est égal à 0, alors compter à partir de la première valeur valide. (3) Lorsque N est une valeur valide, mais que le nombre actuel de lignes K est inférieur à N, compter de la première à la période en cours. (4)La valeur de retour est nulle lorsque N est nul. (5) N peut être une variable. 2.Lors du comptage des signaux: (1)La méthode d'exécution du signal est sélectionnée comme signal de confirmation après l'achèvement de la ligne K ou l'examen après l'achèvement de la ligne K (par exemple: écrire CHECKSIG(SIG,A,0,D,0,0); dans le modèle), à l'exclusion des signaux qui ne sont pas fixés sur la ligne K courante, c'est-à-dire revenir au nombre de signaux qui ont été fixés. (2) La méthode d'exécution du signal est sélectionnée pour ne pas effectuer de révision du signal (par exemple: écrire MULTSIG ou MULTSIG_MIN; dans le modèle), y compris le signal lorsque la ligne K courante est envoyée et fixée. 3.Le signal BK généré par la commande BPK est traité comme le signal BPK et le signal SK généré par la commande SPK est le même.

    Exemples:

    N:=BARSLAST(DATE<>REF(DATE,1))+1;
    BKN:=COUNTSIG(BK,N);
    MA5:=MA(C,5);
    BKN=0&&C>MA5,BK;                        // There is no BK signal in the day and the latest price is greater than the 5-period moving average, then buy and open a position
    
  • Le numéro de téléphone de l'entreprise

    Prendre la position de la ligne K du signal de position d'ouverture spécifié.

    Utilisation:ENTRYSIG_PLACE(N);, prenez la position de la ligne K où le signal d'ouverture de la position nth est situé dans une transaction complète.

    Commentaires: 1.Les signaux pour l'ouverture de positions sont les suivants:BK, SK, BPK, SPKJe suis désolée. 2.Une position est considérée comme une transaction complète à partir du moment où elle est ouverte jusqu'à ce qu'elle soit maintenue à 0. 3.Si le nombre de signaux ouverts dans une transaction complète est inférieur à N, la fonction renvoie zéro. 4.La position de la ligne K est le nombre entre la ligne K courante et la ligne K où se trouve le signal d'ouverture spécifié. 5.Lorsque N est égal à 0 ou nul, la fonction renvoie nul. 6.Le paramètre N n'est pas pris en charge comme variable.

    Exemples:

    ENTRYSIG_PLACE(3)=5&&BKVOL>0,SP;        // If the K-line of the third position opening signal is 5 K-lines away from the current K-line, and the long position is greater than 0, sell and close the position
    
  • Le montant de la subvention est calculé à partir du montant de la subvention.

    Prenez le prix du signal de position ouverte spécifié.

    Utilisation:ENTRYSIG_PRICE(N);Si aucun signal n'est donné pour ouvrir une position, la fonction renvoie null.

    Commentaires: 1.Les signaux pour l'ouverture de positions sont les suivants:BK, SK, BPK, SPKJe suis désolée. 2.Une position est considérée comme une transaction complète à partir du moment où elle est ouverte jusqu'à ce qu'elle soit maintenue à 0. 3.Si le nombre de signaux ouverts dans une transaction complète est inférieur à N, la fonction renvoie zéro. 4.Lorsque N est égal à 0 ou nul, la fonction renvoie nul. 5.Le paramètre N n'est pas pris en charge comme variable. 6.Le calcul de cette fonction inclut le glissement. 7.Modèle de prix de clôture: la valeur de la fonction de ligne K actuelle du signal spécifié ne changera pas. Modèle de prix de commande: Retour sur le prix du n° signal d'ouverture de la transaction en cours à la ligne K actuelle du signal spécifié.

    Exemples:

    ENTRYSIG_PRICE(3)=3000&&BKVOL>0,SP;     // If the opening price of the 3rd fixed opening signal is 3000, and the long position is greater than 0, sell and close the position
    
  • Les données de l'enregistrement

    Prenez le lot de signal du signal d'ouverture de position spécifié.

    Utilisation:ENTRYSIG_VOL(N);Si la fonction n'a pas de signal pour ouvrir une position, elle renvoie null.

    Commentaires: 1.Les signaux pour l'ouverture de positions sont les suivants:BK, SK, BPK, SPKJe suis désolée. 2.Une position est considérée comme une transaction complète à partir du moment où elle est ouverte jusqu'à ce qu'elle soit maintenue à 0. 3.Si le nombre de signaux ouverts dans une transaction complète est inférieur à N, la fonction renvoie zéro. 4.Lorsque N est égal à 0 ou nul, la fonction renvoie nul. 5.Le paramètre N n'est pas pris en charge comme variable. 6.Modèle de prix de clôture: la valeur de la fonction de ligne K actuelle du signal spécifié ne changera pas. Modèle de prix de commande: à la ligne K actuelle du signal spécifié, il revient au numéro de lot du signal du n° signal d'ouverture de la transaction en cours.

    Exemples:

    ENTRYSIG_PRICE(3)=3000&&ENTRYSIG_VOL(3)>2,SP;     // If the opening price of the 3rd fixed opening signal is 3000, and the signal lot number of the 3rd fixed opening signal is greater than 2, sell and close the position
    
  • Nom de l'établissement

    Prendre la position de la ligne K du signal de fermeture spécifié.

    Utilisation:EXITSIG_PLACE(N);, prenez la position de la ligne K du signal de clôture du N° dans une transaction complète.

    Commentaires: 1.Les signaux de clôture des positions sont les suivants:BP, SP, CLOSEOUT, STOPJe suis désolée. 2.Une position est considérée comme une transaction complète à partir du moment où elle est ouverte jusqu'à ce qu'elle soit maintenue à 0. 3.Lorsque le nombre de signaux de fermeture est inférieur à N, la fonction renvoie null. 4.La position de la ligne K fait référence au nombre de lignes K entre la ligne K actuelle et le signal de fermeture désigné. 5.Lorsque N est égal à 0 ou nul, la fonction renvoie nul. 6.Le paramètre N n'est pas pris en charge comme variable.

    Exemples:

    EXITSIG_PLACE(3)=5&&BKVOL<=0,BK;                  // If the K-line of the third closing signal is 5 K-lines away from the current K-line, and there is no long position, buy to open a position
    
  • Le montant de la garantie est calculé à partir du montant de la garantie.

    Prenez le prix du signal de position de clôture spécifié.

    Utilisation:EXITSIG_PRICE(N);, prenez le prix du n° signal de clôture dans une transaction complète.

    Commentaires: 1.Les signaux de clôture des positions sont les suivants:BP, SP, CLOSEOUT, STOPJe suis désolée. 2.Une position est considérée comme une transaction complète à partir du moment où elle est ouverte jusqu'à ce qu'elle soit maintenue à 0. 3.Lorsque le nombre de signaux de clôture d'une transaction complète est inférieur à N, la fonction renvoie zéro. 4.Lorsque N est égal à 0 ou nul, la fonction renvoie nul. 5.Le paramètre N n'est pas pris en charge comme variable. 6.Le calcul de cette fonction inclut le glissement. 7.Modèle de prix de clôture: la valeur de la fonction de ligne K actuelle du signal spécifié ne changera pas. Modèle de prix de commande: Retour sur le prix du n° signal d'ouverture de la transaction en cours à la ligne K actuelle du signal spécifié.

    Exemples:

    EXITSIG_PRICE(3)=3000&&BKVOL>0,SP;               // If the closing price of the 3rd fixed closing signal is 3000, and the long position is greater than 0, sell and close the position
    
  • ExitsIG_VOL

    Prenez le lot de signal du signal de position de fermeture spécifié.

    Utilisation:EXITSIG_VOL(N)Prenez la taille du lot de signal du n° signal de clôture d'une transaction complète.

    Commentaires: 1.Les signaux de clôture des positions sont les suivants:BP, SP, CLOSEOUT, STOPJe suis désolée. 2.Une position est considérée comme une transaction complète à partir du moment où elle est ouverte jusqu'à ce qu'elle soit maintenue à 0. 3.Lorsque le nombre de signaux de clôture d'une transaction complète est inférieur à N, la fonction renvoie zéro. 4.Lorsque N est égal à 0 ou nul, la fonction renvoie nul. 5.Le paramètre N n'est pas pris en charge comme variable. 6.Modèle de prix de clôture: la valeur de la fonction de ligne K actuelle du signal spécifié ne changera pas. Modèle de prix de commande: à la ligne K actuelle du signal spécifié, il revient au numéro de lot du signal du n° signal de clôture de la transaction en cours.

    Exemples:

    EXITSIG_PRICE(3)=3000&&EXITSIG_VOL(3)>2,BK;      // If the closing price of the 3rd fixed closing signal is 3000, and the signal lot number of the 3rd fixed closing signal is greater than 2, buy to open the position
    
  • Fonctions de position

    • Le groupe MYVOL

      Prenez le numéro de lot de commandes.

      MYVOL take the lot number of orders.
      
      Usage: Take the lot number of orders, it is mostly used for lot calculation when multiple contracts are loaded in the scale in/dump model.
      
      Remark:
      Backtesting: Return to the lot size set in the backtesting parameters.
      
      Examples:
      // When the order lot size in the loading parameter is set to 3, the order lot size of BK written following is 6
      C>O,BK(2*MYVOL);
      C<O,SP(BKVOL);
      
    • Le gouvernement

      Les fonds disponibles sur le compte.

      MONEY funds available in the account.
      
      Usage: MONEY returns to the available funds in the account for calculation of positions, lot sizes, etc.
      
      Calculation methods:
      1.The initial value of MONEY in the account is the starting capital set in the margin parameters.
      2.The initial value of MONEY in the historical backtesting is the initial capital set in the backtesting parameters.
      3.The MONEY value of the current K-line of the position opening signal: available funds before opening a position - margin for holding positions - handling fee, where margin for holding positions = opening price * margin ratio * trading unit * lot size.
      4.Money value of K-line not closed after opening = money value of K-line before opening signal + floating profit and loss profit.
      5.The MONEY value of the current K-line of the closing signal: available funds before closing the position + profit and loss of closing the position + margin released by closing the position - handling fee, where the margin released by closing the position = opening price * margin ratio * trading unit * lot size.
      
      Remarks:
      1.The signal execution method is 'confirm the order after the K-line is completed' or 'XX order and review after the K-line is completed':
        a.When the signal to open a position is a K-line, the return value of MONEY is the available funds of the previous K-line - margin for opening a position - handling fee.
        b.When the closing signal is a K-line, the return value of MONEY is the available funds of the previous K-line + closing profit and loss + margin released by the position - handling fee.
      2.Select the signal execution method as 'send a signal to place an order without reviewing':
        a.When the signal to open a position is a K-line, the return value of MONEY is the available funds of the previous K-line - margin for opening a position - handling fee.
        b.When the closing signal is a K-line, the return value of MONEY is the available funds of the previous K-line + closing profit and loss + margin released by the position - handling fee.
      3.The signal execution method is 'When the K-line is completed to confirm the signal to place an order', the closing profit and loss = (the closing price of the K-line of the closing signal - the opening price) * lot size * trading unit - handling fee.
      4.When the signal execution method is 'the signal is placed immediately without review', the closing profit and loss = (the order price of the closing signal - the opening price) * lot size * trading unit - handling fee.
      5.After the account is initialized, the return value of MONEY is the funds available in the initialization box.
      
      Examples:
      K:=MONEY*0.2/(C*MARGIN*UNIT+FEE);               // The number of lots that can be opened with 20% of the account's available funds (this writing method is applicable to contracts that charge a fee based on a fixed number of lots), FEE custom, or calculated
      
    • Les produits de base

      Le capital de compte.

      MONEYTOT account Equity.
      
      Usage: MONEYTOT returns to the current account equity, and the model performs position control. It is used for fund management such as order lot size.
      
      Calculation method: MONEYTOT=Account available funds + position margin.
      
      Remarks:
      1.The initial value of MONEYTOT in the account is the initial capital set in the margin parameters.
      2.The initial value of MONEYTOT in the historical backtesting is the initial capital set in the backtesting parameters.
      3.When the account is initialized:
        a.The current signal is the opening signal, and the return value of MONEYTOT is the available funds of the account in the initialization box.
        b.The current signal is the closing signal, then MONEYTOT returns to the available funds of the account + margin in the initialization box.
      4.The signal to open a position is the K-line: MONEYTOT = available funds in the account + margin for holding positions.
      5.After opening a position and before closing a position: MONEYTOT returns to the available funds in the current account + margin for holding positions.
      6.The current k-line of the closing signal: when the position is 0, MONEYTOT = available funds; when the position is not 0, MONEYTOT = available funds + margin occupied by the position.
      Remark:
      The available funds in the position list are the available funds including floating profit and loss (= current equity - margin occupied by positions).
      
      Examples:
      K:=MONEYTOT*0.2/(C*MARGIN*UNIT+FEE); // The number of lots that can be opened with 20% of the account equity(this writing method is applicable to contracts that charge a fixed lot size), FEE customization, or calculation.
      
    • Compte à rebours

      Retours sur les fonds disponibles sur le compte de négociation, équivalent àMONEY.

      Utilisation:ACCOUNTMONEYRetour sur les fonds disponibles sur le compte de négociation.

    • Compte-monnaie TOT

      Retours sur les fonds propres du compte de négociation, équivalent àMONEYTOT.

      Utilisation:ACCOUNTMONEYTOTRetour sur les fonds propres du compte de négociation.

    • Les pièces

      Le nombre de pièces disponibles sur le compte au comptant de la monnaie numérique.

      1.It is used for digital currency spot to obtain the current number of available coins.
      
    • Marge

      Leverage.

      Spots de monnaie numérique

      a := MARGIN;   // Fixed as value 1
      

      Futures sur devises numériques

      Les contrats à terme sur devises numériques sont réglés par le levier.

      img

      a := MARGIN;   // Declare the variable a and assign the current contract leverage to a
      
  • Fonction de données TICK

    • Les questions posées

      Obtenir le prix de vente deTICKPour commencer.

    • Les questions posées

      Obtenir le prix de vente deTICKPour deux.

    • - Je ne sais pas.

      Obtenir le prix de vente deTICKPour trois.

    • - Je ne sais pas.

      Obtenir le prix de vente deTICKPour quatre.

    • - Je ne sais pas.

      Obtenir le prix de vente deTICKPour cinq.

    • - Je ne sais pas.

      Obtenir le volume de ventes deTICKPour commencer.

    • Les données de base

      Obtenir le volume de ventes deTICKPour deux.

    • Je ne sais pas.

      Obtenir le volume de ventes deTICKPour trois.

    • Je ne sais pas.

      Obtenir le volume de ventes deTICKPour quatre.

    • - Je ne sais pas.

      Obtenir le volume de ventes deTICKPour cinq.

    • BID1

      Obtenir le prix d'offre deTICKPour commencer.

    • BID2

      Obtenir le prix d'offre deTICKPour deux.

    • BID3

      Obtenir le prix d'offre deTICKPour trois.

    • BID4

      Obtenir le prix d'offre deTICKPour quatre.

    • BID5

      Obtenir le prix d'offre deTICKPour cinq.

    • BID1VOL

      Obtenir le volume des offres deTICKPour commencer.

    • BID2VOL

      Obtenir le volume des offres deTICKPour deux.

    • BID3VOL

      Obtenir le volume des offres deTICKPour trois.

    • BID4VOL

      Obtenir le volume des offres deTICKPour quatre.

    • BID5VOL

      Obtenir le volume des offres deTICKPour cinq.

    • Nouveau

      Obtenez le dernier prix deTICK.

  • Système

    • Exit

      Un message d'erreur est lancé et le programme s'éteint.

      EXIT('msg');   // Parameters need to be passed in, string parameters need to be wrapped with '', an error is thrown, the error text is string msg
      
    • Les informations

      Sortie du journal

      INFO(cond, param, ...);
      
      1.cond is a condition variable, output log if true.
      2.A condition variable can be followed by multiple variadic parameters.
      Example:
      INFO(1, C, '<-closing price');
      
    • Le contrat de travail

      Utilisez CONTRACT pour obtenir le code du contrat d'échange du mappage du contrat actuellement défini.

      INFO(1, CONTRACT);
      

      img

    • DATA

      Utilisez la commande DATA pour charger les données.

      (*backtest
      start: 2020-01-21 00:00:00
      end: 2020-02-12 00:00:00
      period: 1d
      basePeriod: 1h
      exchanges: [{"eid":"Binance","currency":"BTC_USDT"}]
      *)
      A:DATA('https://www.fmz.com/upload/asset/32bf73a69fc12d36e76.json');
      INFO(1, CONTRACT, A);
      C>HV(H, 10),SPK;
      C<LV(L, 15),BPK;
      AUTOFILTER;
      

      Utilisation['attribute name']pour prendre la valeur d'un attribut dans les données.https://www.fmz.com/upload/asset/1ef31d778467ed9dd00.jsonest les liens de données externes, il peut être un lien vers les données fournies par d'autres programmes de service, ou il peut être des données fournies par le centre de données de la plate-forme de trading FMZ Quant, comme la partie des commentaires dans l'exemple(*Consumption Index: DATA('CPI')[ 'city'];*), utilisez le codeCPIpour obtenir des données (les données ne sont pas encore toutes ouvertes).

      (*backtest
      start: 2018-01-21 00:00:00
      end: 2020-02-12 00:00:00
      period: 1d
      basePeriod: 1d
      exchanges: [{"eid":"Binance","currency":"BTC_USDT"}]
      *)
      
      Consumption index: DATA('https://www.fmz.com/upload/asset/1ef31d778467ed9dd00.json')['city'];
      (*Consumption index: DATA('CPI')['city'];*)
      Consumption index > HV(Consumption index, 90),BPK;
      Consumption index < LV(Consumption index, 90),SPK;
      AUTOFILTER;
      

      img

  • Autres

    • Paramètres de bibliothèque de classe MyLanguage

      • Points de prix minimaux

        img

        Sur le marché des contrats à terme BITMEX, le prix minimum est de 0,5. Sur l'échange de contrats à terme OKEX, le prix minimum est de 0,01.

        Lorsque le prix de certains contrats est relativement bas, il est nécessaire de se pencher sur l'adéquation de la définition de paramètres tels que la précision de la devise de prix, la précision de la variété de négociation.

      • Nombre maximal de périodes de la variable Il affecte le nombre de cartes K-line BARs de la même manière que l'appel de laSetMaxBarLenfonction dans lejavascriptLa stratégie l'est.

      • stratégie MyLanguage, le nombre de positions affichées sur le tableau dans la colonne d'état.

        Toutes sont le nombre réel de postes détenus.

        img

      • Juge conditionnel (il n'est pas recommandé d'écrire de cette façon).

        IF H > C THEN
        BEGIN
            X:=10;
        END
        
    • Exemple:

      • Lorsque le modèle de prix en temps réel est utilisé, la nouvelle barre de ligne K est détectée:

        VARIABLE:N:0;
        IF N <> BARPOS AND ISLASTBAR = 1 THEN
        BEGIN
            N:=BARPOS;
            INFO(1, '123');
        END
        

Relationnée

Plus de