Автор |
Сообщение |
Tikubase
Зарегистрирован: 11.03.2009
Сообщения: 20
|
У меня возникают проблемы при тестировании. Тестирую стратегию, а в отчете не все сделки, стрелки на графике стоят правильно, а начинаешь сравнивать, в отчете этих сделок просто нет.
Кто сталкивался с такой проблемой?
Код проверил, все ок!
У меня версия 4.90, ставил 5.20 все равно не помогает. |
|
|
Посмотреть профиль Отправить личное сообщение |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
Стрелки на графике нарисованы отдельным индикатором при помощи функции Equity() ? |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
Tikubase
Зарегистрирован: 11.03.2009
Сообщения: 20
|
нет,
Я тестирую систему, и потом из отчета, правой клавишей рисую стрелки входа и выхода.
Индикатор на основании которого работает система подтверждает правильность стрелок, но в отчете этих данных нет.
Данные беру с финама или экспорт из квика, результат на меняется. |
|
|
Посмотреть профиль Отправить личное сообщение |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
В настройках тестера на закладке Report включи вместо Trade list Detailed Log и после этого смотри сигналы и что в результате получилось. |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
Tikubase
Зарегистрирован: 11.03.2009
Сообщения: 20
|
Нашел!!!!!!
У меня переменный объем позы и иногда денег не хватало!!!!!
Спасибо!!!!! |
|
|
Посмотреть профиль Отправить личное сообщение |
|
Tim
Зарегистрирован: 12.02.2010
Сообщения: 245
Откуда: Дмитров
|
Програму завершил редактировать.
Просканировал - выданы все сигналы, всё верно.
Запустил Бэктест и обнаружил непонятные цифры во время сделок:
Цитата: |
Entry signal: SiM-10_15min=Buy(1)
Enter Long SiM-10_15min Price: 23480, Shares: 2082, Comission: 1561.5, Rank:1, Equity: 96877, Margin Loan: 2.39996e+006, Fx Rate:1
1 Open Positions: , SiM-10_15min(+2082), Equity: 90631, Cash: 1.54
|
Меня беспокоит откуда взялась цифра 2082.
В коде у меня настройки следующие:
Код: |
RoundLotSize = 1;
TickSize = 1;
PointValue = 1;
MarginDeposit = ceil(Close/500)*500/25; // 1/25=4% для Si
Capital = 100000;
Risk = 0.02 * Capital;
// далее в конце
// для Buy и отдельно считается для Short
Pose = Risk/(BuyPrice-BuyStop);
PositionSize = Pose*MarginDeposit;
|
В настройках АА стоит: Futures Mode, Account Margin = 4, Comission = 0.75$ per contract, Round lot size =1, Ticksize = 1, Allow position size shrinking.
Явно вход на всю сумму.
Пробовал считать:
Pose = 2000 / (23480-23440) = 50
Postionsize = 50 * 940 (это ГО получается) = 47000
должно быть 50 контрактов.
Или я что-то упустил?
////// Опа, только что обнаружил, что поза для шортовых сделок рассчитываются корректно, а лонговых - на все деньги входы.
Но сам код для лонгов и шортов одинаковый.
Далее в конце дня нашёл сигнал на выход.
Тоже непонятки:
Цитата: |
Exit signals: SiM-10_15min=Sell
Exit Long, SiM-10_15min, Price: 23575, Shares 2082, Comission: 1561.5, Profit: 194667 (7.79%), Entry Rank:1, Equity: 263437, Fx Rate: 1
0 Open Positions: Equity: 294667, Cash: 294667
|
Почему Profit 7.79% ?
И почему Equity отличаются: 263437 и 294667 ?
Если прибыль 194667, то и Equity должно быть 294667 вроде. |
_________________ УСПЕХ — это движение от неудачи к неудаче БЕЗ ПОТЕРИ ЭНТУЗИАЗМА.
- Уинстон Черчилль |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
При торговле фьючами Account Margin не нужен. Он не имеет значения.
Вместо PositionSize используй SetPositionSize(). Эта функция удобнее и новее.
А косяки у тебя скорее всего при определении (BuyPrice-BuyStop) |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
Tim
Зарегистрирован: 12.02.2010
Сообщения: 245
Откуда: Дмитров
|
А что ставить в Settings в АА в Account Margin??
Setpositionsize() пробую.
У меня исчезли все зеленые стрелки на графике и остались только красные.
Хотя сигналы есть (в Explore проверял).
Как вернуть зеленые стрелки? |
_________________ УСПЕХ — это движение от неудачи к неудаче БЕЗ ПОТЕРИ ЭНТУЗИАЗМА.
- Уинстон Черчилль |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
Tim
Зарегистрирован: 12.02.2010
Сообщения: 245
Откуда: Дмитров
|
Второй вопрос решл перезапуском Amibroker |
_________________ УСПЕХ — это движение от неудачи к неудаче БЕЗ ПОТЕРИ ЭНТУЗИАЗМА.
- Уинстон Черчилль |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
Tim писал(а): |
А что ставить в Settings в АА в Account Margin??
|
Если тестируешь в режиме фьючерсов, то можно ничего не ставить. |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
Tim
Зарегистрирован: 12.02.2010
Сообщения: 245
Откуда: Дмитров
|
Попытался сохранить настройки АА в файл, но выдаёт ошибку: Введите числовое значение.
Может всё-таки там хотя бы ноль надо вводить?
Дело в том, что у меня в Бэктестинге не торгует - insufficient funds.
Всё время - 0 Open Positions. |
_________________ УСПЕХ — это движение от неудачи к неудаче БЕЗ ПОТЕРИ ЭНТУЗИАЗМА.
- Уинстон Черчилль |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
insufficient funds это значит нехватает денег для открытия позиций.
По остальному фиг знает... |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
Tim
Зарегистрирован: 12.02.2010
Сообщения: 245
Откуда: Дмитров
|
ПОнял: исправил spsValue на SpsShare
Теперь в Бэктестере система торгует! И Account Margin меняю - пробую разные вариации.
НО! Обнаружил, что всегда при команде Sell цена 30, т.е. в 1000 раз меньше, чем должна быть. При просмотре в Explore Sellprice корректный всегда. Account Margin не влияет.
И ещё: почему-то После каждого Buy обязательно идут Cover и Sell, если Cover понятно, но почему Sell - ума не приложу.
По коду не должно быть такого...
Код: |
Spred = Optimize("Spred",30,-200,130,10);
расчёт условий 1,2,5, 6 и 7;
Buyprice = Max(Close,Ref(Open,1)) + Spred;
Shortprice = Min(Close,Ref(Open,1)) - Spred;
Buy = условие1 и условие8;
Short = условие2 и условие9;
SellPrice = Min(Close,Ref(Open,1))- Spred;
CoverPrice = Max(Close,Ref(Open,1))+ Spred;
расчет условий 3,4 и SPS;
SetPositionSize(SPS,spsShares);
Sell = (условие2 OR условие3) AND условие5 AND условие6;
Cover = (условие1 OR условие4) AND условие5 AND условие7; |
3 и 4 условия - по стопам/допустимой просадке.
1 и 2 условия - основные торговые правила.
остальные условия добавлены для исключения повторов и слабых сигналов.
Как видно Sell ни одним условием не пересекается с Buy.
Но почему-то стабильно выскакивает с ним вместе и с неадекватной ценой.
В чём проблема? бьюсь уже который день.
Allow same bar exit отключен. |
_________________ УСПЕХ — это движение от неудачи к неудаче БЕЗ ПОТЕРИ ЭНТУЗИАЗМА.
- Уинстон Черчилль |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
Tim
Зарегистрирован: 12.02.2010
Сообщения: 245
Откуда: Дмитров
|
|
_________________ УСПЕХ — это движение от неудачи к неудаче БЕЗ ПОТЕРИ ЭНТУЗИАЗМА.
- Уинстон Черчилль |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
Немного не в тему.
Вот говоришь код все Ок. А зачем ы там оптимизируешь Spred да еще и с отрицательных значений?
А если в отчете тестера включить не Detailed Log а Trade list, то там цены сделок нормальные? |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
|