Websocket как сделать? - страница 22

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

Для закрепления материала пройдем с самого начала. Создаем новый проект (Консольное приложение), назовем его BinaryTicks

Может будем в этом продолжать?

можно удалить ненужное

Наверное лучше передавать в библиотеку символ, период и время свечи, а библиотека будет возвращать цены и сделать отдельную функцию для тиков
 
Fedor Arkhipov:

Может будем в этом продолжать?

можно удалить ненужное

Я буду писать с нуля, ты можешь в этом продолжать. 

В глобальном классе я прописываю новые методы


 

Создал

А не надо сделать их булевыми? чтобы получать результат, что соединение установлено.

 
Fedor Arkhipov:

Может будем в этом продолжать?

можно удалить ненужное

Наверное лучше передавать в библиотеку символ, период и время свечи, а библиотека будет возвращать цены и сделать отдельную функцию для тиков

Это не корректно. Перед началом работы нужно собрать историю с сервера и записать в файл символа, на основе этих данных построить график, а далее уже на самом графике получать любую свечу и строить любые индикаторы как на обычном символе.

 
Fedor Arkhipov:

Создал

А не надо сделать их булевыми? чтобы получать результат, что соединение установлено.

Их бессмысленно делать булевыми, они не вернут сразу результат, сокет работает асинхронно. Можно только добавить функцию проверки соединения.

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

Это не корректно. Перед началом работы нужно собрать историю с сервера и записать в файл символа, на основе этих данных построить график, а далее уже на самом графике получать любую свечу и строить любые индикаторы как на обычном символе.

хорошо, я думал мы по другому будем реализовывать
 
Алексей Барбашин:

Их бессмысленно делать булевыми, они не вернут сразу результат, сокет работает асинхронно. Можно только добавить функцию проверки соединения.

Да, такая обязательно нужна
 

Добавляю в проект папку Service, в ней будут сервисные классы, в том числе и класс сокета.


Добавляю в папке класс WSSocket, делаю его публичным

 

а можно вмешаться ?

класс/интерфейс со стороны MT никто не хочет сделать заранее ??

то есть дать конкретное ТЗ которое обсуждается и которое подлежит исполнению.

ну давайте начнём:


class Hibou {

Hidou(string url=HIBOU_WS_URL);  // думаю почти бесспорно

~Hibou();

void DoEvent(); // веб-сокеты асинхронны, а может в тредах реализуем, будем дёргать при первой возможности

int State(); // некое текущее состояние

/// хенды по событиям протокола, вызываемые из DoEvevnt

virtual void OnConnect();  //  соеденились - зашибись

virtual void OnMessage(string json); // получили внятный Event

/// и так далее - заказчик представляет как он намерен использовать интерфейс.

/// если он этого не знает, мы за него ничего придумать не можем, клиника в руках пациентов

}

 
Fedor Arkhipov:
хорошо, я думал мы по другому будем реализовывать

Так ты высказывай как бы хотелось, чтобы ты сам получал удовольствие от процесса. Только пойми: у сервера нельзя запросить конкретную свечу, можно только диапазон свечей за выбранные даты. Так что думай в этом направлении.

Причина обращения: