Синхронизация инструментов с хранилищем


Синхронизация инструментов с хранилищем
Atom
26.08.2013


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

Теги:


Спасибо:


1 2  >
Mikhail Sukhov

Фотография
Дата: 26.08.2013
Ответить


Kazai Mazai Перейти
Если к гидре подключаться как к удаленному серверу, есть возможность сделать импорт инструментов.
Есть ли возможность импортировать инструменты из гидры при локальном соединении?


В этом и вся соль - по простому никак.

Давай махнем. Мы тебе лицензию на гидра сервер, а ты нам доку на форум Гидры по своему чудо плагину. Есть возможность на ГитХаб выложить скомпилированное сразу?
Спасибо:

Kazai Mazai

Фотография
Дата: 27.08.2013
Ответить


Легко =)
Спасибо:

Mikhail Sukhov

Фотография
Дата: 27.08.2013
Ответить


Kazai Mazai Перейти
Легко =)


Проапрейдил лицензии. Только они скоро протухнут. Может получить через брокера сразу на год?
Спасибо: Kazai Mazai

Kazai Mazai

Фотография
Дата: 27.08.2013
Ответить


Михаил Сухов Перейти
Kazai Mazai Перейти
Легко =)


Проапрейдил лицензии. Только они скоро протухнут. Может получить через брокера сразу на год?



Спасибо.

У меня только у IB счет, к ним я так понял нет привязки.
Спасибо:

Kazai Mazai

Фотография
Дата: 28.08.2013
Ответить


Фэил =(


Это после добавления инструментов в гидру моим чудо-плагином=))

Может версии библиотек не совпадают?

Лог гидры:

Код
03:02:14.196|Error  |S#.Data   |System.ServiceModel.CommunicationException: Ошибка сериализации параметра ÷ñÒ1625756587êÖ0õæ÷http://stocksharp.com/hy...er:GetSecuritiesResult. ÷ñÒ1625756587êÖ1õæ÷Сообщение InnerException было "Тип "System.Int64[]" с именем контракта данных "ArrayOflong:http://schemas.microsoft.com/2003/10/Serialization/Arrays" не ожидается. Попробуйте использовать DataContractResolver или добавьте любые статически неизвестные типы в список известных типов - например, используя атрибут KnownTypeAttribute, или путем их добавления в список известных типов, передаваемый в DataContractSerializer.".  Подробнее см. InnerException. ---> System.Runtime.Serialization.SerializationException: Тип "System.Int64[]" с именем контракта данных "ArrayOflong:http://schemas.microsoft.com/2003/10/Serialization/Arrays" не ожидается. Попробуйте использовать DataContractResolver или добавьте любые статически неизвестные типы в список известных типов - например, используя атрибут KnownTypeAttribute, или путем их добавления в список известных типов, передаваемый в DataContractSerializer.
   в System.Runtime.Serialization.XmlObjectSerializerWriteContext.SerializeAndVerifyType(DataContract dataContract, XmlWriterDelegator xmlWriter, Object obj, Boolean verifyKnownType, RuntimeTypeHandle declaredTypeHandle, Type declaredType)
   в System.Runtime.Serialization.XmlObjectSerializerWriteContext.SerializeWithXsiType(XmlWriterDelegator xmlWriter, Object obj, RuntimeTypeHandle objectTypeHandle, Type objectType, Int32 declaredTypeID, RuntimeTypeHandle declaredTypeHandle, Type declaredType)
   в System.Runtime.Serialization.XmlObjectSerializerWriteContext.InternalSerialize(XmlWriterDelegator xmlWriter, Object obj, Boolean isDeclaredType, Boolean writeXsiType, Int32 declaredTypeID, RuntimeTypeHandle declaredTypeHandle)
   в System.Runtime.Serialization.XmlObjectSerializerWriteContext.InternalSerializeReference(XmlWriterDelegator xmlWriter, Object obj, Boolean isDeclaredType, Boolean writeXsiType, Int32 declaredTypeID, RuntimeTypeHandle declaredTypeHandle)
   в WriteKeyValueOfanyTypeanyTypeToXml(XmlWriterDelegator , Object , XmlObjectSerializerWriteContext , ClassDataContract )
   в System.Runtime.Serialization.ClassDataContract.WriteXmlValue(XmlWriterDelegator xmlWriter, Object obj, XmlObjectSerializerWriteContext context)
   в WriteArrayOfKeyValueOfanyTypeanyTypeToXml(XmlWriterDelegator , Object , XmlObjectSerializerWriteContext , CollectionDataContract )
   в System.Runtime.Serialization.CollectionDataContract.WriteXmlValue(XmlWriterDelegator xmlWriter, Object obj, XmlObjectSerializerWriteContext context)
   в System.Runtime.Serialization.XmlObjectSerializerWriteContext.SerializeAndVerifyType(DataContract dataContract, XmlWriterDelegator xmlWriter, Object obj, Boolean verifyKnownType, RuntimeTypeHandle declaredTypeHandle, Type declaredType)
   в System.Runtime.Serialization.XmlObjectSerializerWriteContext.SerializeWithXsiType(XmlWriterDelegator xmlWriter, Object obj, RuntimeTypeHandle objectTypeHandle, Type objectType, Int32 declaredTypeID, RuntimeTypeHandle declaredTypeHandle, Type declaredType)
   в System.Runtime.Serialization.XmlObjectSerializerWriteContext.InternalSerialize(XmlWriterDelegator xmlWriter, Object obj, Boolean isDeclaredType, Boolean writeXsiType, Int32 declaredTypeID, RuntimeTypeHandle declaredTypeHandle)
   в System.Runtime.Serialization.XmlObjectSerializerWriteContext.InternalSerializeReference(XmlWriterDelegator xmlWriter, Object obj, Boolean isDeclaredType, Boolean writeXsiType, Int32 declaredTypeID, RuntimeTypeHandle declaredTypeHandle)
   в WriteSecurityToXml(XmlWriterDelegator , Object , XmlObjectSerializerWriteContext , ClassDataContract )
   в System.Runtime.Serialization.ClassDataContract.WriteXmlValue(XmlWriterDelegator xmlWriter, Object obj, XmlObjectSerializerWriteContext context)
   в System.Runtime.Serialization.XmlObjectSerializerWriteContext.InternalSerialize(XmlWriterDelegator xmlWriter, Object obj, Boolean isDeclaredType, Boolean writeXsiType, Int32 declaredTypeID, RuntimeTypeHandle declaredTypeHandle)
   в System.Runtime.Serialization.XmlObjectSerializerWriteContext.InternalSerializeReference(XmlWriterDelegator xmlWriter, Object obj, Boolean isDeclaredType, Boolean writeXsiType, Int32 declaredTypeID, RuntimeTypeHandle declaredTypeHandle)
   в WriteArrayOfSecurityToXml(XmlWriterDelegator , Object , XmlObjectSerializerWriteContext , CollectionDataContract )
   в System.Runtime.Serialization.CollectionDataContract.WriteXmlValue(XmlWriterDelegator xmlWriter, Object obj, XmlObjectSerializerWriteContext context)
   в System.Runtime.Serialization.DataContractSerializer.InternalWriteObjectContent(XmlWriterDelegator writer, Object graph, DataContractResolver dataContractResolver)
   в System.Runtime.Serialization.DataContractSerializer.InternalWriteObject(XmlWriterDelegator writer, Object graph, DataContractResolver dataContractResolver)
   в System.Runtime.Serialization.XmlObjectSerializer.WriteObjectHandleExceptions(XmlWriterDelegator writer, Object graph, DataContractResolver dataContractResolver)
   в System.Runtime.Serialization.XmlObjectSerializer.WriteObject(XmlDictionaryWriter writer, Object graph)
   в System.ServiceModel.Dispatcher.DataContractSerializerOperationFormatter.SerializeParameterPart(XmlDictionaryWriter writer, PartInfo part, Object graph)
   --- Конец трассировки внутреннего стека исключений ---
   в System.ServiceModel.Dispatcher.DataContractSerializerOperationFormatter.SerializeParameterPart(XmlDictionaryWriter writer, PartInfo part, Object graph)
   в System.ServiceModel.Dispatcher.DataContractSerializerOperationFormatter.SerializeParameter(XmlDictionaryWriter writer, PartInfo part, Object graph)
   в System.ServiceModel.Dispatcher.DataContractSerializerOperationFormatter.SerializeBody(XmlDictionaryWriter writer, MessageVersion version, String action, MessageDescription messageDescription, Object returnValue, Object[] parameters, Boolean isRequest)
   в System.ServiceModel.Dispatcher.OperationFormatter.OperationFormatterMessage.OperationFormatterBodyWriter.OnWriteBodyContents(XmlDictionaryWriter writer)
   в System.ServiceModel.Channels.Message.OnWriteMessage(XmlDictionaryWriter writer)
   в System.ServiceModel.Channels.BinaryMessageEncoderFactory.BinaryMessageEncoder.WriteMessage(Message message, Stream stream)
   в System.ServiceModel.Channels.StreamingConnectionHelper.WriteMessage(Message message, IConnection connection, Boolean isRequest, IConnectionOrientedTransportFactorySettings settings, TimeoutHelper& timeoutHelper)
   в System.ServiceModel.Channels.SingletonConnectionReader.StreamedFramingRequestContext.OnReply(Message message, TimeSpan timeout)
   в System.ServiceModel.Channels.RequestContextBase.Reply(Message message, TimeSpan timeout)
   в System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.Reply(MessageRpc& rpc)
03:28:39.294|Error  |UserConfig|System.NullReferenceException: Ссылка на объект не указывает на экземпляр объекта.
   в StockSharp.Hydra.UserConfig.Save()



Студии

Код
Server stack trace: 
   в System.ServiceModel.Channels.SocketConnection.ThrowIfNotOpen()
   в System.ServiceModel.Channels.SocketConnection.Read(Byte[] buffer, Int32 offset, Int32 size, TimeSpan timeout)
   в System.ServiceModel.Channels.ConnectionStream.Read(Byte[] buffer, Int32 offset, Int32 count)
   в System.ServiceModel.Channels.SingletonConnectionReader.SingletonInputConnectionStream.ReadCore(Byte[] buffer, Int32 offset, Int32 count)
   в System.ServiceModel.Channels.SingletonConnectionReader.SingletonInputConnectionStream.Read(Byte[] buffer, Int32 offset, Int32 count)
   в System.ServiceModel.Channels.DelegatingStream.Read(Byte[] buffer, Int32 offset, Int32 count)
   в System.ServiceModel.Channels.MaxMessageSizeStream.Read(Byte[] buffer, Int32 offset, Int32 count)
   в System.ServiceModel.Channels.SingletonConnectionReader.Close(TimeSpan timeout)
   в System.Xml.XmlBufferReader.Close()
   в System.Xml.XmlBaseReader.Close()
   в System.Xml.XmlBinaryReader.Close()
   в System.ServiceModel.Dispatcher.OperationFormatter.DeserializeBodyContents(Message message, Object[] parameters, Boolean isRequest)
   в System.ServiceModel.Dispatcher.OperationFormatter.DeserializeReply(Message message, Object[] parameters)
   в System.ServiceModel.Dispatcher.ProxyOperationRuntime.AfterReply(ProxyRpc& rpc)
   в System.ServiceModel.Channels.ServiceChannel.HandleReply(ProxyOperationRuntime operation, ProxyRpc& rpc)
   в System.ServiceModel.Channels.ServiceChannel.Call(String action, Boolean oneway, ProxyOperationRuntime operation, Object[] ins, Object[] outs, TimeSpan timeout)
   в System.ServiceModel.Channels.ServiceChannelProxy.InvokeService(IMethodCallMessage methodCall, ProxyOperationRuntime operation)
   в System.ServiceModel.Channels.ServiceChannelProxy.Invoke(IMessage message)

Exception rethrown at [0]: 
   в System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage reqMsg, IMessage retMsg)
   в System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData& msgData, Int32 type)
   в StockSharp.Algo.History.Hydra.IRemoteStorage.GetSecurities(Guid sessionId, String[] securityIds)
   в StockSharp.Algo.History.Hydra.RemoteStorageClient.#=qcCIGSiyvYgo9yUgsmroHWMSha4lhKUjucgANNh2G0uQ=.#=qZjlZ1a84AfV2nhg22lpXpXCsZd3tVisKYs2vOJd6Nzo=(IRemoteStorage #=qVpXS2s6k_fELVAAiQO2hEA==)
   в Ecng.Net.ChannelHelper.Invoke[TChannel,TResult](ChannelFactory`1 factory, Func`2 handler)
   в StockSharp.Algo.History.Hydra.RemoteStorageClient.#=qefIL2lTZFJn8FQ3kiApGwT6kIwuVjMYIiFEF3GRodRg=(ISecurityStorage #=qE9GETcmYXdR$YhTtlB5BGxpmrdLuS_jrTQ8RAiR3Imk=, IEnumerable`1& #=qB4YN5_pjUZkoRfd$xHM_cw==)
   в StockSharp.Algo.History.Hydra.RemoteStorageClient.GetNewSecurities(ISecurityStorage securityStorage)
   в StockSharp.Studio.StorageSettingsWindow.Save()





Спасибо:

Mikhail Sukhov

Фотография
Дата: 28.08.2013
Ответить


Kazai Mazai Перейти
Фэил =(


Это после добавления инструментов в гидру моим чудо-плагином=))

Может версии библиотек не совпадают?



Это нормальное явление, значит плагин начинает существовать реальным миром.

Судя по ошибке, в Security.ExtensionInfo что-то записывается, что не может сериализоваться. Если ссылка на код, где в плагине инструменты создаются?
Спасибо:

Kazai Mazai

Фотография
Дата: 28.08.2013
Ответить


Михаил Сухов Перейти
Kazai Mazai Перейти
Фэил =(


Это после добавления инструментов в гидру моим чудо-плагином=))

Может версии библиотек не совпадают?



Это нормальное явление, значит плагин начинает существовать реальным миром.

Судя по ошибке, в Security.ExtensionInfo что-то записывается, что не может сериализоваться. Если ссылка на код, где в плагине инструменты создаются?



Да действительно, там legacy-костыли были для древнейшей гидры.

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

Ни сообщений, ни ошибок.

Кажется, что на стороне студии что-то, потому что с другими инструментами также.
Спасибо:

Mikhail Sukhov

Фотография
Дата: 29.08.2013
Ответить


Kazai Mazai Перейти

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

Ни сообщений, ни ошибок.

Кажется, что на стороне студии что-то, потому что с другими инструментами также.


А именно проверяется их наличие в хранилище инструментов (кнопка ввиде базы данных) или в панети инструментов?
Спасибо:

Kazai Mazai

Фотография
Дата: 29.08.2013
Ответить


Михаил Сухов Перейти
Kazai Mazai Перейти

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

Ни сообщений, ни ошибок.

Кажется, что на стороне студии что-то, потому что с другими инструментами также.


А именно проверяется их наличие в хранилище инструментов (кнопка ввиде базы данных) или в панети инструментов?


И где кнопка в виде БД и в кнопке-бинокле искал.
И в базе смотрел sqlite manager'ом.

Спасибо:

Mikhail Sukhov

Фотография
Дата: 02.09.2013
Ответить


Проверил - синхронизация прошла успешно. Проверял на дев версии, но на боевой эта часть такая же. А сколько инструментов примерно?

Спасибо:
1 2  >

Добавить файлы через драг-н-дроп, , или вставить из буфера обмена.

loading
clippy