Maxim
|
Date: 6/10/2011
|
|
|
|
Mikhail Sukhov InsiderHSE Здравствуйте! Открываю солюшн Indicators, ссылки на сборки Ecng не находятся... Это только у меня так? Если я удалю их и снова добавлю на сборки из папки references, это не повлияет на работу других пользователей? Get Latest version делайте не из Solution Explorer, а из Source Control Explorer. У вас не все файлы скачались. У меня был аналогичный случай. Я сделал CheckOut только одного Indicators.sln. И у меня не хватало двух библиотек Ecng в референсах. Они были, но были помечены предупреждением. Если посмотреть код файла Indicators.csproj, то там есть такие строки Code <ItemGroup> <Reference Include="Ecng.Common"> <HintPath>..\References\Ecng.Common.dll</HintPath> </Reference> <Reference Include="Ecng.Trading.Algo"> <HintPath>..\..\References\Ecng.Trading.Algo.dll</HintPath> </Reference> <Reference Include="System" /> <Reference Include="System.Core" /> </ItemGroup>
Что говорит, что два файла лежат где-то выше. Я просто добавил вручную эти два файла в референс. Но после этого откатил изменение в файле Indicators.csproj назад, что бы не влиять на основной код.
|
|
Thanks:
|
|
|
|
|
Maxim
|
Date: 6/10/2011
esper Сейчас посмотрел исходный код индикатора Vidya, судя по всему, в нем используется индикатор CMO, который у нас уже есть в проекте, может стоит использовать его, а не считать значения самим? Т.е. комбинировать индикаторы, чтобы не было дублирования кода. Сделал реализацию внутри сугубо для ускорения работы. Так же CMO умножается на 100 в реализации, тогда как в Vidya этого не нужно. Если кто желает переделать, то я не против. UPD Неверно написал последнее предложение. Так как я делаю этот индикатор, то я за него в ответе. Если Михаил скажет, что надо переделать с использованием CMO класса, то я переделаю. Если не скажет, то пределывать ничего не буду.
|
|
Thanks:
|
|
|
|
|
esper
|
Date: 6/10/2011
Maxim Сделал реализацию внутри сугубо для ускорения работы. Так же CMO умножается на 100 в реализации, тогда как в Vidya этого не нужно. Если кто желает переделать, то я не против. Предлагаю всем вместе решить как будем поступать в таких случаях, каждый раз изобретать велосипед или использовать готовое[smile] Maxim, goricap это ваш логин? Сейчас вытянул последнюю версию проекта, там добавлен индикатор Volatility, у метода Add стоит override, хотя в базовом классе такого метода вообще нет, и проект не компилируется, вы перед Check In проект компилируете? P.s. CCI вроде никто еще не брал?
|
|
Thanks:
|
|
|
|
|
Maxim
|
Date: 6/10/2011
esper Maxim Сделал реализацию внутри сугубо для ускорения работы. Так же CMO умножается на 100 в реализации, тогда как в Vidya этого не нужно. Если кто желает переделать, то я не против. Предлагаю всем вместе решить как будем поступать в таких случаях, каждый раз изобретать велосипед или использовать готовое[smile] Мое личное мнение: Изобретать велосипед по возможности не стоит. У проекта должен быть куратор, который должен решать политику партии. Всем вместе решать не стоит. Демократия говно :). Надо всем вместе обсуждать, а решение должен принимать один человек. esper Maxim, goricap это ваш логин? Сейчас вытянул последнюю версию проекта, там добавлен индикатор Volatility, у метода Add стоит override, хотя в базовом классе такого метода вообще нет, и проект не компилируется, вы перед Check In проект компилируете?
Мой логин. Обычно компилирую. В последний раз забыл проверить на компиляцию.
|
|
Thanks:
|
|
|
|
|
esper
|
Date: 6/10/2011
|
|
|
|
Думаю, что окончательное решение будет принимать Михаил, как основатель проекта, либо выберем другого ответственного.
Пока выскажу некоторые предложения по проекту: 1. Как уже писал выше, предлагаю использовать уже готовые индикаторы повторно, а не писать каждый раз все под себя, во-первых, не будет лишнего дублирования кода, во-вторых, код индикаторов становится более компактным и понятным, в-третьих, это позволит лишний раз протестировать уже написанные индикаторы.
2. Давайте по возможности писать не только индикаторы, но и тесты к ним, индикаторов сейчас куча, а какие реально работают - не ясно, т.к. тестов всего несколько. Сомневаюсь, что нам нужна куча неработающих индикаторов и предлагаю считать, что индикатор написан только тогда, когда он покрыт тестами.
3. По поведению индикаторов: - если индикатор еще не сформировался, то его значение равно 0 - пока индикатор не сформировался, событие Changed не вызывается - после того как индикатор сформировался, событие Changed вызывается при каждом добавлении нового значения - функция Add принимает или decimal или Candle
4. При коммите указывать какие изменения были внесены, коммиты делать только для работающих версий (по минимуму проект должен собираться)
5. Xml комментарии писать на одном языке
Пока все, если что-то вспомню, добавлю[smile]
|
|
Thanks:
|
|
|
|
|
InsiderHSE
|
Date: 6/10/2011
|
|
|
|
Mikhail Sukhov InsiderHSE Здравствуйте! Открываю солюшн Indicators, ссылки на сборки Ecng не находятся... Это только у меня так? Если я удалю их и снова добавлю на сборки из папки references, это не повлияет на работу других пользователей? Get Latest version делайте не из Solution Explorer, а из Source Control Explorer. У вас не все файлы скачались. Я даже когда с сайта скачиваю последнюю сборку, ссылки в референсе проекта присутствуют, но с восклицательныйм знаком, сами сборки не находятся. Я на 100% не уверен, сейчас нет возможности посмотреть, но вроде из Source Control Explorer и закачиваю последнюю версию. Maxim У меня был аналогичный случай. Я сделал CheckOut только одного Indicators.sln. И у меня не хватало двух библиотек Ecng в референсах. Они были, но были помечены предупреждением.
Если посмотреть код файла Indicators.csproj, то там есть такие строки
Код:
<ItemGroup> <Reference Include="Ecng.Common"> <HintPath>..\References\Ecng.Common.dll</HintPath> </Reference> <Reference Include="Ecng.Trading.Algo"> <HintPath>..\..\References\Ecng.Trading.Algo.dll</HintPath> </Reference> <Reference Include="System" /> <Reference Include="System.Core" /> </ItemGroup>
Что говорит, что два файла лежат где-то выше.
Я просто добавил вручную эти два файла в референс. Но после этого откатил изменение в файле Indicators.csproj назад, что бы не влиять на основной код.
То есть вы поправили код Indicators.csproj вручную или через add new reference? Вам каждый раз приходится это делать?
|
|
Thanks:
|
|
|
|
|
esper
|
Date: 6/10/2011
InsiderHSE Я даже когда с сайта скачиваю последнюю сборку, ссылки в референсе проекта присутствуют, но с восклицательныйм знаком, сами сборки не находятся. Я на 100% не уверен, сейчас нет возможности посмотреть, но вроде из Source Control Explorer и закачиваю последнюю версию. Идем в Team Explorer - Source Control, там есть Indicators, а еще есть References, вот их тоже скачиваем и все должно работать, можно скачать не полностью References, а только нужные зависимости. Вообще суть в том, чтобы нужные зависимости лежали по адресу Indicators\..\References, т.е. рядом с директорией проекта Indicators, должна быть директория References с нужными зависимостями
|
|
Thanks:
|
|
|
|
|
Maxim
|
Date: 6/10/2011
InsiderHSE То есть вы поправили код Indicators.csproj вручную или через add new reference? Вам каждый раз приходится это делать?
Вручную не правил. Добавил библиотеки в референс. И после этого откатил изменения в файле Indicators.csproj назад. Сделал это один раз. Каждый раз не нужно делать. По какой причине после того, как сделал откат Студия видит библиотеки не знаю. По идее не должна. Но работает. Возможно я просто чего то не знаю. Возможно стоит сделать по совету esper и скачать References.
|
|
Thanks:
|
|
|
|
|
Sergey Masyura
|
Date: 6/10/2011
|
|
|
|
Maxim esper Maxim Сделал реализацию внутри сугубо для ускорения работы. Так же CMO умножается на 100 в реализации, тогда как в Vidya этого не нужно. Если кто желает переделать, то я не против. Предлагаю всем вместе решить как будем поступать в таких случаях, каждый раз изобретать велосипед или использовать готовое[smile] Мое личное мнение: Изобретать велосипед по возможности не стоит. У проекта должен быть куратор, который должен решать политику партии. Всем вместе решать не стоит. Демократия говно :). Надо всем вместе обсуждать, а решение должен принимать один человек. esper Maxim, goricap это ваш логин? Сейчас вытянул последнюю версию проекта, там добавлен индикатор Volatility, у метода Add стоит override, хотя в базовом классе такого метода вообще нет, и проект не компилируется, вы перед Check In проект компилируете?
Мой логин. Обычно компилирую. В последний раз забыл проверить на компиляцию. Если кто-то что-то поломал немного или сильно, то это в принципе херня. Особенности командной работы. Поэтому давайте относится с пониманием друг к другу, опыт у всех разный. Всем спасибо за огромный вклад в проект!
|
|
Thanks:
|
|
|
|
|
Mikhail Sukhov
|
Date: 6/10/2011
|
|
|
|
Maxim По какой причине после того, как сделал откат Студия видит библиотеки не знаю. По идее не должна. Но работает. Возможно я просто чего то не знаю.
Возможно стоит сделать по совету esper и скачать References.
Схема такая. Это репозитарий коннекторов. Они все и используют S# сборки. Так же как и проект с индикаторами. Соответственно структура проекта (файловая) должна быть как она есть в TFS. Даже если у кого-то S# был до этого скачал и распакован в какую-то директорию другую, ссылки у проекта с индикаторами не должны вести туда. Используется только локальная копия сборок. Я думаю надо отпустить файлы. А то сейчас вы все файлы пометили как редактируемые. Еще заметил, что checkin идет с пометкой не просто edit, но и branch. Схема работы следующая: 1. Запустили студию. Открытие Source Control Explorer. Сделали на проект Connectors Get Latest Version. 2. Редактируем файл в студии. Все изменения автоматически подхватываются TFS (в отличие от SVN). 3. Хотим залить изменения. Делаем еще раз Get Latest Version. Если кто-то уже залил свои изменения, и у нас произошел конфликт, то эти конфликты правим из окна Pending Changes. 4. Идем опять в Source Control Explorer, делаем Check In. Появляется окно, где пишет обязательно комментарий и проверяем свои изменения. Иногда бывает так, что студия (или мы сами) поменяли лишнее количество файлов. Лишнее откатываем (в случае сомнений делаем diff чтобы проверить отличия). По идее, в check in должны попасть только cs и csproj файлы. Все лишнее - это уже повод для сомнений.
|
|
Thanks:
|
|
|
|