Jump to content
FORUM · BOTBEETLE

Admin

Administrators
  • Content Count

    488
  • Joined

  • Last visited

  • Days Won

    39

Posts posted by Admin

  1. Trial


    Нужно писать в службу поддержки, обычно такое ограничение бетфаир вводит если долго получать данные без выполнения ставок. 


  2. On 12/31/2019 at 7:54 PM, Kravcov said:

    Тогда, подскажите, есть ли возможность получить доступ к ставкам, чтоб самому (через алгоритм) вычислять принятые ставки и потом через скрипт выставить нужную ставку.

    Список ставок есть в классе MarketCatalouge -> MarketBook ->

    image.thumb.png.9d6021adbfc1d03a48bfb66d6ef2b548.png

    • Thanks 1

  3. Здесь есть ряд сложностей. Раньше у меня была даже такая рабочая кнопка (1), уравнивание по противоположной линии

    image.png.700ad8e0c9ac8013038a03e8689a5897.png

    Но возникали проблемы при расчете уравнивания если в каждой линии были множественные ставки.

    Возможно вернусь к этому позже, но все равно начну с восстановления работоспособности этой кнопки а не со скриптов. 

     


  4. 1. Нужно скачать и переустановить программу, или скачать новый zip

    2. В разделе скриптов лежит новая библиотека типов, ее нужно положить рядом с исполняемым файлом

     

    3. А также заменить библиотеку в вашем проекте

    image.thumb.png.01b482d05edda72cbd62b83468a26674.png

    • Thanks 1

  5. Добавил функции удаления из окна ненужных рынков, Вот пример:

    • Если рынок перешел в лайв, проверяем сумму денег. 
    • Меньше 5000 - удаляем из окна событие, иначе открываем тоталы.
    • Если в тоталах нет ордеров удаляем рынок 

     

    Результат на скрине

    image.thumb.png.5e81f214a199ad244fc82de67239f860.png

     

            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

    • Thanks 1

  6. Еще один признак что данные уже получены - можно проверять  класс MarketBook в  MarketCatalouge - если он не равен NULL, значит цены и данные для этого рынка получены

    • Thanks 1

  7. На втором проходе ордеров не будет, потому что они еще не получены,:

    • При  открытии получается список рынков запросом  listMarketCatalogue - это только список рынков
    • Далее когда придет очередь (в зависимости от количества событий) делается запрос  listMarketBook - вот тогда и появятся ордера

    Нужно учесть что все команды и запросы производятся асинхронно. 

     


  8. По этому коду не видно где проверяется переменная IsOrders.

    Она должна проверяться непосредственно в MarketCatalouge в каждом рынке отдельно.

     


  9. On 12/23/2019 at 12:13 PM, Admin said:

    IsExluded - сейчас не используется

    Можно этой переменной задать значение и исключить не нужное событие


  10. Хотя идея хорошая, те рынки которые не нужны можно удалять.

    В следующем обновлении сделаю что-то типа

    • Api.Delete(Event) - удалить событие
    • Api.Delete(MarketCatalouge) - удалить рынок
    • Like 1
    • Confused 1

  11. On 12/23/2019 at 10:41 PM, Kravcov said:

    Мне нужно получить список все цен и сумм. Но в MarketCatalouge только одна наилучшая. Как можно получить список List< MarketBook > listMarketBook ( List<String>marketIds , PriceProjection priceProjection, OrderProjection orderProjection, MatchProjection matchProjection, boolean includeOverallPosition, boolean partitionMatchedByStrategyRef, Set<String> customerStrategyRefs, StringcurrencyCode,Stringlocale, Date matchedSince, Set<BetId> betIds)

    В 5.40 в класс MarketCatalouge добавлен класс MarketBook

    image.png.382a291cf06a5335ebf6c77d1a8086ed.png

    • Thanks 1

  12. Для того чтобы уравнивание было доступно при наличии не принятых ставок, нужно включить опцию (1) - "Всегда отображать уравнивание"

     

    image.png.419cbc58afcb9a36623bb16e50492321.png

    • Thanks 1
×
×
  • Create New...