Как теперь посчитать греки ?
раньше было : strategy.Security.Delta
теперь на такое пишет :
"StockSharp.BusinessEntities.Security" не содержит определения для "Delta" и не был найден метод расширения "Delta", принимающий тип "StockSharp.BusinessEntities.Security" в качестве первого аргумента (возможно, пропущена директива using или ссылка на сборку)
🤨 🤨 🤨
コメント (37)
ログイン または アカウントを作成, コメントを残すにはログインまたは新規登録してください
Помоему разобрался сам :
Теперь надо делать : var bs = new BlackScholes(strategy.Security); del = bs.Delta(.....
Правильно ?
если да то вам надо поправить пример с дельтахеджем.
А что с ним не так?
var delta = strategy.Security.Delta(strategy.Security.Volatility / 100m);
в 4.0.4 так не получается
И вобше , я сдури ( начитавшись что пофиксили траблы со счетом позиций , а у меня на 4.0.3 иногда позиция стратегии почемуто не менялась , когда дочерняя стратегия делала трейд) решил поменять библиотеки стокшарп в своем роботе с 4.0.3 на 4.0.4, код не менял совсем , робот сдурел наслал стоько заявок что я потом пол часа из удалял из стаканов а они еще появлялись и появлялись.
Что ж вы там такое изменили , неужели можно так без предупреждений менять логику работы ?
Лог в студию.
Ага , мне не до логов было , когда я увидел что творится .
Но в коде ничего не менял , только по новому греки пересчитывал через var bs...
Видно бага какая то серезная есть .
Мне сейчас своево робота вернуть бы к жизни, потом может снова на 4.0.4 попробую запустить , но все таки наверное дождусь следующей стабильной версии.
Так если не понятно что не работает, как мы это исправим к следующей версии? Вообще не понятно у нас ли проблема или у вас какая-то всплыла в логике...
Запустите без выставления заявок на реальном рынке
БШ работает, проверил по тестам. Думаю, проблема в логике робота. Уверен почти на 99%. Слишком уж симптомы знакомы. Так что ждать придется по всей видимости долго.😎
Спорить не буду , может и у меня , будет время разберусть ,
подозрительно что на 4.0.3 работает на 4.0.4 сразу загинается ,
а вот вспомнил еще такое :
может туда стоит посмотреть , из за баги о которой я говорил раньше я подменялял на опционах:
strategy.Security.UnderlyingSecurityId = "UXZ1@UX";
в коде с 4.0.4 я это убрал , так как сказали что баг нашли и исправили, завтра попробую с библиотеками 4.0.4 но подмену оставлю, мож там проблема и не нужно будет логирование включать :)
Еще вот бага в 4.0.4
Ошибка 1 Не удалось загрузить метаданные для сборки "StockSharp.Xaml". Возможно, эта сборка была загружена из Интернета. См. http://go.microsoft.com/fwlink/?LinkId=179545. При загрузке возникли следующие ошибки: Невозможно загрузить файл или сборку "StockSharp.Xaml, Version=4.0.4.0, Culture=neutral, PublicKeyToken=null" или один из зависимых от них компонентов. Операция не поддерживается. (Исключение из HRESULT: 0x80131515)
4.0.3 беру там нормально .
Где ругается? На чём ругается? Какой стэк трэйс?
Давайте постараемся более информативные баг репорты составлять.
Удаляю из ссылок StockSharp.Xaml.dll 4.0.3 вместо него подгружаю StockSharp.Xaml.dll 4.0.4 и вижу вот такую картинку:
Знакомая картинка. Это не из-за S#. Windows скаченным файлам из интернета какой-то атрибут безопасности добавляет, что потом дизайнер Студии их не может показать. Собственно, ошибка об этом и гласит.
Да , действительно , распаковал архивчик с стокшарпом через тотал коммандер а не через винду и проблема решилась , спасибо , звиняйте за беспокойство.
Начал понемногу разбиратся в проблеме с моим кодом при переходе с 4.0.3 на 4.0.4 :
Такое впечатление что не правильно срабативают правила стратегии :
Strategy.Security.LastTradePriceLessAbsolute(Price) или Strategy.Security.LastTradePriceMoreAbsolute(Price)
пока не знаю как разобратся какое из правил сработало.
Если можно проверьте , пожалуйста.
а какая проблема с кодом? и что конкретно мы должны проверить? :)
Ок, давайте по порядку , в стратегии есть два правила , которые при срабатывании собитий:
Strategy.Security.LastTradePriceLessAbsolute(Price1)
и
Strategy.Security.LastTradePriceMoreAbsolute(Price2)
запускают одну и ту же процедуру :
так вот :
Цена находится посредине между Price1 и Price2, диапазон от Price1 до Price2 - большой , а даная процедура постоянно срабатывает.
Запускайте разные процедуры, создайте лог с выводом цены последней сделки в момент создания, в момент срабатывания.
Тоесть вы уверены что LastTradePriceMoreAbsolute и ЛессАбсолюте в версии 4.0.4 отрабатывает корректно.
Посмотрел по коду - явных ошибок не вижу, с 4.0.3 изменений не было, жалоб - тоже. Я не уверен, потому и предлагаю сделать лог, где будет понятно хоть что-нибудь кроме как "кажется, что либо то, либо это работает как-то не так, как я ожидаю" :)
Логирование у себя в коде еще не включал , пока даже не разбирался как.
Выяснил что срабатывает постоянно .LastTradePriceLessAbsolute(Price1) причем LastTrade.Price в то время намного выше Price1 .
Пожалуйста.
Я сказал , будет время попробую разобраться.
А если б не такие как я вам бы армию тестеров нанимать нужно было б .
Так что давайте не будем , я просто сказал что есть проблема.
Смысла говорить что есть проблема нет, т.к. неизвестно где проблема - у нас, у вас или ещё где в сторонней библиотеки. Как вы предлагаете нам исправлять и что если вам что-то там чудится и кажется? Хотите исправлений - пишите конкретику.
Не нравится - пишите своё, пользуйтесь аналогами если найдёте.
Всё просто.
Правило системы :
MainSystem.Rules.Add(MainSystem.Security.LastTradePriceLessAbsolute(Put_Edge).Do(ReStartTrade1));
на изображениях значения в момент срабатывания правила.
LastTrade.Price в момент создания правила думаю не имеет значения так как правило
MainSystem.Rules.Add(MainSystem.Security.LastTradePriceLessAbsolute(Put_Edge).Do(ReStartTrade1));
должно срабатывать в момент когда цена станет меньше Put_Edge
Подтверждаю, в 4.0.5 будет фикс
:( придется ждать 4.0.5
М..да.
Чем дальше в лес тем больше дров.
Версия 4.0.5 : по дочерней стратегии проходят сделки , позиция основной стратегии вобше не меняется ...
это наверно тот фикс по позициям которий в 4.0.4 анонсировали.
Для меня пока что 4.0.3 самая рабочая версия 😳
Посмотрел по коду - все нужные события обрабатываются. Теперь ваша очередь предоставить лог.
Я правильно понимаю что используется Strategy.PositionManager? Portfolio используется обычный или BasketPortfolio?
Что нужно:
Пока не могу , логирование не включал и времени совсем нету , будет время попробую разобратся.
У нас его навалом. Так что не стесняйтесь, напрягайте нас, устраивайте угадайку.
При чем тут угадайка.
Я вам говорил что есть проблема в 4.0.4 вы не верили , пока я сам не разобрался в чем проблема, но проблема все таки была не в моем коде на что вы намекали .
Теперь сказал что есть проблема в 4.0.5 , на 4.0.3 все работает нормально, хотите разбирайтесь сами , не хотите скажите опять что проблема у меня в коде .
где вы разобрались в чём проблема? ткните носом, пожалуйста. я упустил этот момент. мы пытались разобраться в чём проблема, никто не намекал что проблема у вас. для того чтоб понять где она - необходимо иметь более-менее какие-то подробности. а не то - "у вас проблема где-то, либо тут либо тут. разбираться не хочу где, смотрите сами." вы раза с 3го смогли указать в каком из правил ошибка. Ошибку искал и исправлял я
Не нравится наше творение - не пользуйтесь. Пишите своё. Хотите чтоб было исправление - помогите найти ошибку.
Или вы действительно считаете что у нас времени свободного столько, что мы не только готовы безвозмездно писать и отдавать всем библиотеку, но ещё и по каждому чиху искать и пересматривать весь код?
Я ж не могу все свое время тратить на поиски багов в вашем творении.
А логирование мне в моем коде незачем.
Этот разговор ни к чему не приведет , будет время скажу конкретно что из задокументированого вами работает не так, а ваши библиотеки я вижу только закрытыми так что уж звиняйте не смогу сказать что и где поправить нужно :)