Автор |
Сообщение |
rcoma
Зарегистрирован: 19.10.2009
Сообщения: 21
|
вопрос такой..
не разберусь с SetPositionSize();
в справке почему-то этот код ставят в конце системы.
а мне же нужно примерно так: (в цикле)
Код: |
if (BuyCond(i)) //набираем позу..
{
SetPositionSize(10, spsPercentOfEquity);
Buy[i] = 1;
BuyPrice[i] = C[i];
}
if (SellCond(i) != 0) //скидывам все разом..
{
SetPositionSize(100, spsPercentOfEquity);
Sell[i] = 1;
SellPrice[i] = SellCond(i) - 0;
} |
но, что-то такая система не работает. Может неправильно далаю ? |
_________________ Мой сайт: http://earlytrade.livejournal.com/ |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
Неправильно.
После первого бая остальные не пройдут. Sell полюбому закрывает лонг полностью не зависимо от сайза. Для набора/сокращения позы надо использовать SigScaleIn/SigScaleOut. См. Хелпер.... |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
rcoma
Зарегистрирован: 19.10.2009
Сообщения: 21
|
С SigScaleIn/SigScaleOut ни чего не понятно. инфа скудная.
У меня весь тестинг идет в цикле и массивы забиваю вручную, упрощенно выглядит так -
Код: |
for(i = 3; i < BarCount; i++)
{
if (BuyCond(i))
{
Buy[i] = 1;
BuyPrice[i] = C[i];
}
} |
как указать тестеру, что не полным сайзом идет ?.. может так ? это было бы просто..
SetPositionSize - я так понял для циклов бесполезна.
и еще вопрос. есть массив Buy, есть BuyPrice и Sell, SellPrice по которым тестер считает, а есть ли переменная в которой висит объем позы пока она открыта в Buy, но не закрыта еще в Sell. ?
извеняйте если вопросы глупые.. |
_________________ Мой сайт: http://earlytrade.livejournal.com/ |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
Цитата: |
как указать тестеру, что
Buy[i]
не полным сайзом идет ?..
|
SetPositionSize() это массив и вполне можно задавать сайз этой функцией. Цикл для этого совсем не обязателен.
Цитата: |
а есть ли переменная в которой висит объем позы пока она открыта в Buy, но не закрыта еще в Sell. ?
|
Увы нет. |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
rcoma
Зарегистрирован: 19.10.2009
Сообщения: 21
|
c PositionSize и sigScaleIn немного разобрался, похоже дело эти элементы не работают в ручном цикле, что конечно очень неприятно.
может есть способ вручную задавать тестеру размер позиции, типа массива на подобии BuyPrice[i] ?
вообще бред какой-то получается. нужно всего-то усреднение протестировать, но в ами это очень непросто. |
_________________ Мой сайт: http://earlytrade.livejournal.com/ |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
Дело в том, что с точки зрения банальной эрудиции система с доливками это всего лишь сумма систем работающих с одной бумагой. Первоначальное откытие позы - одна система,
первая доливка - вторая и т.д.
Соответственно складывать их в кучу имеет смысл только в том случае если каждая из них прибыльная. Но тогда можно тупо протестировать каждую систему отдельно и не парится с написанием доливок. |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
rcoma
Зарегистрирован: 19.10.2009
Сообщения: 21
|
000 писал(а): |
Дело в том, что с точки зрения банальной эрудиции система с доливками это всего лишь сумма систем работающих с одной бумагой. Первоначальное откытие позы - одна система,
первая доливка - вторая и т.д.
Соответственно складывать их в кучу имеет смысл только в том случае если каждая из них прибыльная. Но тогда можно тупо протестировать каждую систему отдельно и не парится с написанием доливок. |
возможно это так, однако это ни коем образом не объясняет как протестировать в амиброкере систему с усреднением. отдельно от первоначальных входов доливки тестировать невозможно. |
_________________ Мой сайт: http://earlytrade.livejournal.com/ |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
Почему? |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
rcoma
Зарегистрирован: 19.10.2009
Сообщения: 21
|
это можно сделать только в полностью ручном коде, т.е. сделать половину работы за тестер. пересчитать самому цену, размер и т.д.
так как у меня алгоритм в цикле я перебираю все бары в поисках сигнала. после отмечаю в массивах бар входа в позицию и его цену, а вот размер мне негде отразить. при возникновении сигнала на усреденние я не могу увязать новый вход с предыдущим, нет такого функционала чтобы указать ами, что это доливка а не новый вход.
если я не правильно все понимаю, прошу поправить меня. |
_________________ Мой сайт: http://earlytrade.livejournal.com/ |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
Есть в тестере такая фишка как advanced portfolio backtester interface. Позволяет сначала анализировать сигналы, менять сайз, удалять некоторые сигналы и т.д. К сожалению я по ненадобности с ним ни разу не разбирался и подсказать не могу.
По поводу систем с доливкой.
Сначала тестируем первый вход. Это просто. Если в таком виде получается не прибыльная система, то первый вход выкидываем нафиг и пишем систему которая открывает позиции в момент первой доливки и т.д. |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
|