하나의 DC의 MT4에서 다른 하나의 따옴표를 부과할 수 있습니까? - 페이지 4

 
getch >> :

스프레드는 차익거래 이론과 아무 관련이 없습니다.


다들 너무 신비롭게 뭔가를 알고 있는 듯 글을 쓰지만 침묵))))) 물고기가 없다고도 쓴다)))) 시간낭비하지 않기 위해 사용자를 비방할 수 있다)
 
그리고 모두가 알고 있습니다. 안 그래?
 
zhuki >> :
Но открыться всё равно сложнее.Да и завершить хотелось бы положительно.

모든 것이 공식화되었습니다.

 
getch >> :

모든 것이 공식화되었습니다.

나는 당신의 연구에 대해 잘 알고 있으며 당신의 연구에 대해 큰 존경심을 가지고 있습니다. 감사해요.

 

이에 대해 전문가의 도움을 받아 인용문을 읽지 않고, 항구로 들어오는 패킷을 한 번에 읽으려고 노력한 적이 있습니까? 말하자면 MT4를 받을 당시.

속도를 높이려면 이해하십시오.

 

이 주제는 이 포럼에서 다루어졌으며 이에 대해 합리적인 글을 작성하기로 약속했습니다. 차익거래 고문의 보편적인 핵심으로 밝혀졌습니다. 주제에 대해 다른 작업을 수행하지 않았습니다.

터미널에서 틱을 받고 거래자에게 보내기까지의 지연은 거의 0에 가깝다고 생각합니다.

가능한 개선 사항을 제안했습니다. 나는 실제로 주제를 흥미롭게 보지만 정면으로 해결할 때는 그렇지 않습니다.

 
getch >> :

이 주제는 이 포럼에서 다루어졌으며 이에 대해 합리적인 글을 작성하기로 약속했습니다. 차익거래 고문의 보편적인 핵심으로 밝혀졌습니다. 주제에 대해 다른 작업을 수행하지 않았습니다.

터미널에서 틱을 받고 거래자에게 보내기까지의 지연은 거의 0에 가깝다고 생각합니다.

가능한 개선 사항을 제안했습니다. 나는 실제로 주제를 흥미롭게 보지만 정면으로 해결할 때는 그렇지 않습니다.

감사합니다. 다 이해했습니다.

 
Fduch >> :

나는 프로그램 자체를 보지 않고 내 자신의 구현(소켓을 통해 따옴표를 수신하고 터미널에 명령을 보내는 C# 응용 프로그램)을 작성했습니다.

그리고 문제는 구현에 있는 것이 아니라 실제로 적용하는 데 있습니다. 아직 중재에 적합한 한 쌍의 DC를 만나지 못했습니다.

어렵지 않다면 코드 예제를 게시하십시오. (소켓을 통해 따옴표를 받는 코드의 예).

 
fevrall >> :

어렵지 않다면 코드 예제를 게시하십시오. (소켓을 통해 따옴표를 받는 코드의 예).

불행히도 나머지 코드가 없으면 쓸모가 없습니다 =)

C# 언어.

         /// <summary>
         /// Метод обработки входящих соединений
         /// </summary>
         public override void ProceedSocket ( object objSocket )
         {
             string dealingCenterName = "" ;
            Socket socket = ( Socket ) objSocket ;
             #region ProcessingSocket
             {
                 #region GetMessage
                 string incomingMessage = "" ;
                byte [ ] buffer = new byte [ 10000 ] ;
                Console . WriteLine ( "Recieving data from socket.." ) ;
                 int recieved = 0 ;
                 while ( ( recieved = socket . Receive ( buffer ) ) ! = 0 )
                 {
                    Console . WriteLine ( "Recieved " + Convert . ToString ( recieved ) ) ;
                     string str = "" ;
                     for ( int k = 0 ; k < buffer . Length ; k + + )
                        str = str + Convert . ToChar ( buffer [ k ] ) ;
                    incomingMessage = incomingMessage + str ;
                     if ( str . Contains ( " \r \n \r \n " ) = = true )
                         break ;
                 }
                 #endregion

                lock ( DealingCentersDictionary )
                 {
                     #region UpdateMarketsInfo
                     // Обновляем инфу в ServerMarketInstruments
                     string [ ] instruments = incomingMessage . Split ( " \r \n " . ToCharArray ( ) ) ;
                     // Выбирам дилинговый центр
                    dealingCenterName = instruments [ 0 ] ;
                    Console . WriteLine ( "Proceeding " + dealingCenterName + " socket" ) ;
                     if ( DealingCentersDictionary . ContainsKey ( dealingCenterName ) = = false )
                        DealingCentersDictionary . Add ( dealingCenterName , new Market ( ) ) ;
                    Market CurrentDCInstruments = DealingCentersDictionary [ dealingCenterName ] ;
                     // Обновляем котировки
                     for ( int k = 1 ; k < instruments . Length ; k + + )
                     {
                         string s = instruments [ k ] ;
                         string [ ] data = s . Split ( ';' ) ;
                         if ( data . Length = = 3 & & data [ 0 ] ! = "" & & data [ 1 ] ! = "" & & data [ 2 ] ! = "" )
                         {
                             string ticket = data [ 0 ] ;
                             double ask = Convert . ToDouble ( data [ 1 ] . Replace ( "." , "," ) ) ;
                             double bid = Convert . ToDouble ( data [ 2 ] . Replace ( "." , "," ) ) ;
                             if ( CurrentDCInstruments . Instruments . ContainsKey ( ticket ) = = false )
                             {
                                CurrentDCInstruments . Instruments . Add ( ticket , new Instrument ( ) ) ;
                             }
                            CurrentDCInstruments . Instruments [ ticket ] . CurrentState . Ask = ask ;
                            CurrentDCInstruments . Instruments [ ticket ] . CurrentState . Bid = bid ;
                         }
                     }
                     #endregion
                 }

                 #region Answer
                byte [ ] byteAnswer = new byte [ 300 ] ;
                socket . Send ( byteAnswer ) ;
                 #endregion
             }
             #endregion
            socket . Close ( ) ;
            Console . WriteLine ( "Closed " + dealingCenterName + " socket" ) ;
         }

"나머지 코드"가 정확히 무엇을 의미하는지에 대한 아이디어를 제공하려면:


그리고 이 모든 것이 정말 쓸모가 없습니다. 왜냐하면. 차익 거래 상황이 없습니다.

감사합니다. 합성 확인 방법을 추가하겠습니다. 그녀에 대해 생각하지 않았다.

 
Fduch >> :


그리고 이 모든 것이 정말 쓸모가 없습니다. 왜냐하면. 차익 거래 상황이 없습니다.


소켓을 통해 따옴표를 얻는 아이디어에 관심이 있습니다. 감사합니다. 나중에 살펴보겠습니다.