Kravcov 4 Posted December 29, 2019 После первого выполнения метода UpdateEvents ми проходим по все евентам и проверяем IsExpanded, открываем если не раскрыт. На втором выполнении метода UpdateEvents у нас уже есть список MarketCatalouges у каждого евента где можно посмотреть тоталы (MarketCatalouges[n]). Тоталы есть а вот орденов нету. Quote Share this post Link to post Share on other sites
Admin 90 Posted December 29, 2019 На втором проходе ордеров не будет, потому что они еще не получены,: При открытии получается список рынков запросом listMarketCatalogue - это только список рынков Далее когда придет очередь (в зависимости от количества событий) делается запрос listMarketBook - вот тогда и появятся ордера Нужно учесть что все команды и запросы производятся асинхронно. Quote Share this post Link to post Share on other sites
Admin 90 Posted December 29, 2019 Еще один признак что данные уже получены - можно проверять класс MarketBook в MarketCatalouge - если он не равен NULL, значит цены и данные для этого рынка получены 1 Quote Share this post Link to post Share on other sites
Admin 90 Posted December 29, 2019 Добавил функции удаления из окна ненужных рынков, Вот пример: Если рынок перешел в лайв, проверяем сумму денег. Меньше 5000 - удаляем из окна событие, иначе открываем тоталы. Если в тоталах нет ордеров удаляем рынок Результат на скрине public override void UpdateEvents(List<Event> events) { foreach (var liveEvent in events.Where(x=>x.MarketCatalogue.IsLive)) { if (liveEvent.MarketCatalogue.TotalMatched >= 5000) { if (liveEvent.IsExpanded == false) { Api.Expand(liveEvent); } else { var marketCatalogue = liveEvent.MarketCatalogues.FirstOrDefault(x => x.MarketBook != null && x.IsOrders == false); if (marketCatalogue != null) { Api.Delete(marketCatalogue); } } } else { Api.Delete(liveEvent); } } } Скоро перезапишу версию 5.40 1 Quote Share this post Link to post Share on other sites
Kravcov 4 Posted December 29, 2019 3 hours ago, Admin said: Скоро перезапишу версию 5.40 В версии 5.40.1 пока нету метода Api.Delete(). Надо ждать следующего обновления BotBeetle.Types.dll или скрипта, или самой программы? Quote Share this post Link to post Share on other sites
Admin 90 Posted December 29, 2019 1. Нужно скачать и переустановить программу, или скачать новый zip 2. В разделе скриптов лежит новая библиотека типов, ее нужно положить рядом с исполняемым файлом 3. А также заменить библиотеку в вашем проекте 1 Quote Share this post Link to post Share on other sites
Admin 90 Posted December 29, 2019 Тогда функция будет видна 1 Quote Share this post Link to post Share on other sites
Admin 90 Posted December 29, 2019 Ссылка в проекте должна быть на версию 5.40.1 1 Quote Share this post Link to post Share on other sites
Kravcov 4 Posted December 30, 2019 On 12/27/2019 at 3:02 PM, Admin said: 4. Api.Green(RunnerCatalog) - команда выравнивания - закрывает только принятый объем (даже если это несколько принятых частично) по текущей цене, не принятые ставки в расчете не участвуют. Моно ли как то сделать так чтоб команда Грин проверяла и выравнивала весь рынок так же и на противоположной линии. На рисунке видно, что есть принятая ставка 1.01 Back Under. Грин хочет выставить ставку на 1.01 Lay Under и выйти в ноль. Но можно же выставить ставку 140 Back Over и закрыть в плюс. Quote Share this post Link to post Share on other sites
Admin 90 Posted December 31, 2019 Здесь есть ряд сложностей. Раньше у меня была даже такая рабочая кнопка (1), уравнивание по противоположной линии Но возникали проблемы при расчете уравнивания если в каждой линии были множественные ставки. Возможно вернусь к этому позже, но все равно начну с восстановления работоспособности этой кнопки а не со скриптов. Quote Share this post Link to post Share on other sites
Kravcov 4 Posted December 31, 2019 С Наступающим Вас Новым Годом! Тогда, подскажите, есть ли возможность получить доступ к ставкам, чтоб самому (через алгоритм) вычислять принятые ставки и потом через скрипт выставить нужную ставку. Quote Share this post Link to post Share on other sites
Admin 90 Posted January 2, 2020 On 12/31/2019 at 7:54 PM, Kravcov said: Тогда, подскажите, есть ли возможность получить доступ к ставкам, чтоб самому (через алгоритм) вычислять принятые ставки и потом через скрипт выставить нужную ставку. Список ставок есть в классе MarketCatalouge -> MarketBook -> 1 Quote Share this post Link to post Share on other sites