Websocket comment ? - page 12

 

ici

 
Igor Makanu:

J'ai essayé votre exemple, ça n'a pas marché.

Soit mes paramètres VS sont incorrects, soit il y a quelque chose qui cloche.

joindre le projet VS et l'appel d'échantillon de MQL5 - c'est la bonne chose à faire.

ZS : si ma mémoire est bonne, cela a cessé de fonctionner lorsque MQL5 a ajouté l'espace de noms.

ci-joint

Dossiers :
 

Super !

Alexei, pouvez-vous recommander un livre pour apprendre Sharpe ?

 
Алексей Барбашин:

Le résultat est dans le studio ! N'oubliez pas d'inclure des captures d'écran du résultat final.

Avez-vous aimé programmer en Sharp ?

Oui. L'essentiel est que vous puissiez le connecter à MQL.


 
Je suis désolé, je dois m'absenter pendant 30 minutes.
 
Алексей Барбашин:

Vladimir, pouvez-vous me dire comment obtenir des données sous forme de structure à partir de Sharp ?


C#

                public static void RefTicks(double open, double close, ref StructTicks ddd) {
                        ddd.Open = open;
                        ddd.Close = close;
                }


MQL

int OnInit() {
   StructTicks tick;
   ConnectorMQL::RefTicks(1.11 ,1.12, tick);
   Print(tick.Open + " / " + tick.Close);
   
   return(INIT_SUCCEEDED);
}
 
Vladimir Suslov:

épinglé

Merci !

étrange, votre exemple a fonctionné la première fois

J'ai créé un nouveau projet à ma place en partant de zéro - j'ai copié ces 5 lignes de code et ça marche à nouveau, ok, je vais croire à la magie.

Merci encore !

 
Je suis là.
 

Il y a toujours quelque chose qui cloche, en théorie ce code devrait fonctionner.

C#

using System;
using System.Runtime.InteropServices;

namespace ClassLibrary2
{
    [StructLayout(LayoutKind.Sequential, Pack = 1)]
    public struct MqlTick
    {
        public Int64 Time;
        public Double Bid;
        public Double Ask;
        public Double Last;
        public UInt64 Volume;
    }
    public class tst
    {
        public static void CopyTick(ref MqlTick inTick, ref MqlTick outTick)
        {
            outTick = inTick;
        }
    }
}

MQL5

#import "ClassLibrary2.dll"
#import
//+------------------------------------------------------------------+
int OnInit()
{
   MqlTick t1,t2;
   tst::CopyTick(t1,t1);
   return(INIT_SUCCEEDED);
}

J'obtiens des erreurs de compilation, le paramètre t1 ne peut pas être converti.

 
Алексей Барбашин:

Pouvons-nous continuer ?