← Zurück

Сохранение стаканов по GAZP@EQNE

Версия 4.1.3. При сохранении стакана получаю ошибку:

System.ArgumentException was unhandled by user code HResult=-2147024809 Message=Минимальный шаг цены 2 не соответствует самой цене 157,12. Parameter name: minStepSize Source=StockSharp.Algo ParamName=minStepSize StackTrace: at #=qWS6OUYaoueyv8N_p$iUUwZ85UAdWtPhxpaXagCNkqCwLCJVYOkuKBLIeK7jI5aUc5Sn8BEb9tO2mntII3NTxVQ==.#=qAnBz8Ityt4T6LvTRdUnNBg==(List1 #=qemH3YAbFDmz4Cwm4$RSaNw==, Decimal #=qkU1DO$f1w1vnnS16DiKOFg==, Decimal #=qxPCVYHoKRzE58GKN5SuTNg==, Decimal #=qFNnnskeqZXDXvK9SSHZTtQ==) at #=qBqzAfx4eX6jbAhjwSd62HDxRx7KjXUhZdaqXaKrbhWNK89$cczN7Ybo1P582C383.#=q969U9984I3HTR_4ffrpawxtVfjAdaV8QbNMp6iNTuRY=(List1 #=qfk$TQuhZjR0JVwetyRmlbQ==, Quote[] #=qkiOcNo3i9GbfYwIUpBhkog==, #=qvs0CsnLs_Ss1esfBSm5zwBJaDoBW$uY3FBMC6svegSZeQ2rqGZkXJaXHGH7s1irW #=q$pMXMoyIX6UURz7ULcGzlQ==, Boolean #=qPXEk8bqhIVqtD1r6qQRxfQ==) at #=qBqzAfx4eX6jbAhjwSd62HDxRx7KjXUhZdaqXaKrbhWNK89$cczN7Ybo1P582C383.#=qPNbrzoo63qiPKAB3RxCH5A==(List1 #=qHaHP4WZSVdKz53Hwzy$ekw==, IEnumerable1 #=qASUWOKDOCFZ2Wu9LWXkBtQ==, #=qvs0CsnLs_Ss1esfBSm5zwBJaDoBW$uY3FBMC6svegSZeQ2rqGZkXJaXHGH7s1irW #=qMfciDzi6G743_rIzu43_Aw==) at #=qz04YdXG2$YAOxeHvpD93kpzjtGGmn$CBMgLGYgYx3D5hyvyfpJ92$IJuzvbahT9DbHGoXECLGq73jVeWqoM7WA==.#=qhS5pEqj0jxrC3EkM2L2ByLP81D1u7MoFLP3gC9SmO2Ha62X2cRDXdnIw_qFSrI0yPZNVSXkqSrWbXB_ShwaNMF27KENqU9n7vKpFW$rzX$w=(IEnumerable1 #=qVh5t1g33tQf$GUY1wukgfA==, #=qT_JKyf8jvmdh8CnDd2erv404Kgk89rxorXnimUV3J5ygkrYMLo9XjjmlV7xs65$6 #=qSWB2y1ELx12TguZDCS1CWQ==) at #=qh2YSDa39RBEjCcO4rb2nambbPWQx618j_mhbAjIJkMVjnwGRGU3KGJb5NYvLGTBn.#=qteF9LpJJBLkC9LySoZdzwA==(DateTime #=qZ5Kd0lhJbrY2DbBE04yF9Q==, #=qZHHnzqkYDg7xCyaxj6PR9A==[] #=qh5tCqhElr2D_oYbBKomIaQ==, Boolean #=qSVNcMUfTvym2UYUPwu0xcQ==) at #=qh2YSDa39RBEjCcO4rb2nambbPWQx618j_mhbAjIJkMVjnwGRGU3KGJb5NYvLGTBn.Save(IEnumerable1 #=qDijncmxOZuMVXEQZJ6Gg9w==) at HydraConsole.Initializer.SaveMarketDepths() in C:\ActiveProjects\AlgoTrading2\trunk\SourceCode\Hydra3\Hydra\Initializer.cs:line 313 at HydraConsole.Initializer.<>c__DisplayClass1d.<InitializeWorker>b__19(Object sender, DoWorkEventArgs args) in C:\ActiveProjects\AlgoTrading2\trunk\SourceCode\Hydra3\Hydra\Initializer.cs:line 235 at System.ComponentModel.BackgroundWorker.OnDoWork(DoWorkEventArgs e) at System.ComponentModel.BackgroundWorker.WorkerThreadStart(Object argument) InnerException:

javascript:__doPostBack('forum$ctl03$PostReply','') Бумагу со всеми параметрами получаю со смарткома как в примере SampleSmartConsole При попытке качать маркет данные по бумагам ММВБ в Гидре получал аналогичные ошибки.

War dieses Thema hilfreich?

Thema teilen

Kommentare (8)

Anmelden oder Konto erstellen, Melden Sie sich an oder registrieren Sie sich, um einen Kommentar zu hinterlassen

Mikhail Sukhov
Mikhail Sukhov

vk37: Версия 4.1.3. При сохранении стакана получаю ошибку:

http://stocksharp.com/posts/m/17308/

vk37
vk37 Autor

При попытке исправить это самостоятельно в Гидре, обнаружил, что минимальный шаг цены в таблице Securities для ММВБ бумаг выставляется почти правильно. Точно не помню, но что-то вроде: где нужно 0.01 - выставляется 100, где нужно 0.00001, выставляется 10000. Ну если это поможет. У меня такой вопрос. Хочу поэкспериментировать со скальпингом на РТС. Нужны стаканы. Подключаться к Плазе дорого для меня. Что выбрать: смарт, квик, что-то еще?

Mikhail Sukhov
Mikhail Sukhov

vk37: При попытке исправить это самостоятельно в Гидре, обнаружил, что минимальный шаг цены в таблице Securities для ММВБ бумаг выставляется почти правильно. Точно не помню, но что-то вроде: где нужно 0.01 - выставляется 100, где нужно 0.00001, выставляется 10000. Ну если это поможет. У меня такой вопрос. Хочу поэкспериментировать со скальпингом на РТС. Нужны стаканы. Подключаться к Плазе дорого для меня. Что выбрать: смарт, квик, что-то еще?

Если поможете нам в Гидре, можно попробовать стаканную историю РТС с плазы для вас как-то организовать.😉

vk37
vk37 Autor

Чем могу помочь?

Mikhail Sukhov
Mikhail Sukhov

vk37: Чем могу помочь?

Есть скайп? Напишите в личку.

vk37
vk37 Autor

Решил вопрос добавлением в обработчик события SmartTrader.NewSecurities кода:


  if (security.Exchange == Exchange.Micex)
    security.MinStepSize = 1/Math.Pow(10, security.MinStepSize);

Math:


    public class Math
    {
        public static decimal Pow(decimal @base, decimal exponent)
        {
            if (exponent == 0M) return 1M;

            var result = @base;

            for (var iteration = 1M; iteration < exponent; iteration += 1M)
                result *= @base;

            return result;
        }
    }

Стаканы буду писать завтра, но думаю все будет ОК )

Mikhail Sukhov
Mikhail Sukhov

vk37: Решил вопрос добавлением в обработчик события SmartTrader.NewSecurities кода:

Может в ИТ написать еще раз? С третьей попытки может что починят.

vk37
vk37 Autor

vk37: Решил вопрос добавлением в обработчик события SmartTrader.NewSecurities кодаТеперь то же самое с индексами MICEX, MICEX10. Поставил условие:```csharp if (security.Exchange == Exchange.Micex && security.Type == SecurityTypes.Index) security.MinStepSize = 1 / MathEx.Pow(10, security.MinStepSize);