PDA

View Full Version : Советник eFXO.NetStop



artamir
11-18-2014, 02:36 PM
Техзадание:

artamir, добрый день.
Сов Маха стал работать не по алгоритму. Видимо мне просто надо задать Вам Т.З. на написание нового (Вашу версию) сОва, что я и хочу сделать:

Советник открывает сетку стоповых ордеров вверх и вниз.
1.Первые стоповые ордера выставляются на расстоянии S (задаваемый параметр) от текущей цены. Это же расстояние - шаг между ордерами сетки.
2.Тейк T/p (задаваемый параметр) в пунктах. Он общий для всех ордеров сетки.
3. Lot (задаваемый параметр)-начальная лотность сеток.
4. Multi (задаваемый параметр)-коэффициент умножения объёма ордеров.
5. Plus (задаваемый параметр) – плюсование объёма ордеров.
6.LotRevers true/false – реверсные ордера будут либо первоначального объёма, либо по величине, равной объёму ордера, к которому выставляются.
7.FixProfit (задаваемый параметр)-при достижении профита по открытым ордерам данного значения, все ордера, относящиеся к этой сетке ордеров, закрываются (как открыnые, так и отложенные).
8. Лот ДЦ (задаваемый параметр) – есть ДЦ, которые ограничивают максимальный лот. Надо, чтобы ордера, получающиеся в результате работы сОва, не превышали это значение. Т.е., если это значение задаётся = 10, а сов должен выставить ордер объёмом=14, то сов должен выставить два ордера (скажем, 10 и 4).
8. Мажик – чтобы можно было работать по нескольким парам, а так же, в случае пропадания сети или интернета, по устранении этого, сов должен подхватить ордера и продолжить работу по алгоритму.

Как видится fkujhbnv работы:

Советник открывает сетку байстоп и селлстоп ордеров на расстоянии S (например 20 пип от абстрактной цены 1000) с тейк профитом (например 100). Расстояние между ордерами внутри сетки также 20 пип. Таким образом , имеем сетку байстоповых ордеров , начинающихся от цены 1020 и стоящих вверх через каждые 20 пунктов и имеющие общий тейк 1120 и сетку селловых, начинающихся от цены 980 и стоящих вниз через каждые 20 пунктов и имеющие общий тейк 880. Сколько получается ордеров в сетке до тейкпрофита - сов ставит сам. Объём каждого ордера, например 1 лот.

Цена пошла вверх (если вниз-зеркальное исполнение ордеров), открылся первый баевый / ордер. На расстоянии S от него выставляется селлстоповый ордер с тейком, общим для селловой сетки (т.е. 880). Если от этого ордера до следующего селлстопого ордера можно поставить ещё отложенники – сов должен их поставить, т. е. не должно быть в селлстоповой сетке возможных уровней без ордеров. Эти ордера должны иметь тот же тейк, что и сетка, к которой они относятся (880 в этом примере).
Цена пошла выше, открылся ещё один баевый ордер-опять в S (=20) пунктах от него выставляется селлстоповый ордер, и т.д. Если цена пошла вниз и зацепила селловый ордер, то: если на расстоянии S от него есть байстоповый (или открытый бай), то ничего не надо, а если нет-выставить байстоп с тейком 1120. И так далее.

В случае достижения значения FixProfit, все ордера закрываются, и всё сначала.
Если же одна из сеток закрывается по T/p, а значение FixProfit не достигнуто, то открывается новая сетка в том же направлении, что и закрытая. Лотность этой сетки зависит от:
1. Если Multi больше 1, то первоначальный лот умножается на это значение.
2. Если Multi =1, то умножения не происходит, а лотность увеличивается плюсованием на величину, задаваемую параметром Plus.

В случае срабатывания ордеров этой сетки, отложенниеи к ней могут высталяться как объёмом равным объёму ордера этой сетки, либо первоначальным объёмом – зависит от параметра LotRevers.

Ну, как-то так.



Версия 1.00

Настройки:
Шаг сетки - растояние между ордерами сетки в пунктах.
Тейкпрофит - тейкпрофит в пунктах
Lot - стартовый объем ордеров
Multy - коэффициент умножения объема ордеров после закрытия сетки по тейкпрофиту
Plus - коэффициент добавления объема ордеров после закрытия сетки по тейкпрофиту
LotRevers - использовать объем "материнского ордера" или нет.
useFixProfit - использовать закрытие по фикспрофиту
FixProfit_Amount - размер фикспрофита

san
11-19-2014, 03:45 PM
Artamir, спасибо большое!
Кинул на тестер-скорость великолепная, даже не ожидал! Даже мой древний комп тянет тест. А вот сна новом, где система Висста, или виндос7? проблемы-не втавляется сов-не открывается папка с каталогом данных. Визуально вроде бы работает правильно. Демка покажет.
Выкладываю рисунки (по другому ничего не сохраняется). На графике -даты с наибольшей просадкой, там буду проводить оптимизацию. Ещё раз огромное спасибо!45943
45942
45941
45944

А... вот что: При запуске на тестере, если сначала не поставить минимальную скорость визуализации, почему-то выставляет очень много ордеров не по алгоритму.

san
11-21-2014, 03:42 PM
артамир, есть баг: на демке пропал интернет. После его восстановления сов навыставлял фиг знает сколько отложенников байстоп. Сов выключал-включал-не, выставляет и выставляет.

artamir
11-25-2014, 02:23 PM
Версия 1.10

Исправлена ошибка бесконечного выставения ордеров.

san
12-08-2014, 08:46 AM
артамир, добрый день!
Сов работает без сбоев пока, спасибо. Правда не совсем удобным получилось с тейк профитом-он выставляет заданный тейк от текущей цены, а не от цены первого отложенника. Т.е., если я хочу задать тейк для сетки=100, мне надо ещё + шаг. Я правильно понимаю этот момент? Сейчас хочу прогнать тест по всей имеющейся у меня истории, результат выложу по окончании.

artamir
12-08-2014, 10:19 AM
Да, вы совершенно верно поняли.

Если дц не разрешит выставление первых отложенных ордеров на расстоянии шаг от цены, то мне не к чему будет приципить расчет уровня общего тейкпрофита.

san
12-10-2014, 11:32 AM
артамир, добрый день!
Опять тот же баг вылез: от текущей цены набил кучу ордеров бай стоп до 1.4 по основной. Надо бы исправить.

san
12-16-2014, 06:59 PM
артамир, добрый день!
Я тут подумал и хочу попросить несколько изменить алгоритм:
сетки первоначальных ордеров выставляются как и прежде. А вот при срабатывании ордера сетки , отложенник к нему выставляется не с тейкпрофитом = тейку противоположной сетки, а с возможностью выставлять самостоятельный тейк (дополнительная настройка). Это, по идее, даст возможность легче переносить флэт.

artamir
01-27-2015, 09:01 AM
артамир, добрый день!
Я тут подумал и хочу попросить несколько изменить алгоритм:
сетки первоначальных ордеров выставляются как и прежде. А вот при срабатывании ордера сетки , отложенник к нему выставляется не с тейкпрофитом = тейку противоположной сетки, а с возможностью выставлять самостоятельный тейк (дополнительная настройка). Это, по идее, даст возможность легче переносить флэт.

Версия 1.20
Иправлен алгоритм расчета уровней выставления ордеров сеток.
Добавлена настройка
TPOnRevers - если > 0, то будет вытавляться отдельный тейк на ордера, которые выставляются как противоположные к ордерам основной сетки.

san
01-27-2015, 01:55 PM
артамир, добрый день!
Спасибо, сов работает. Правда с реверсным лотом не совсем так, как я себе представлял: при true он выставляет объёмом прямой сетки, а вот при false он выставляется объёмом противоположной сетки, а не начальным объёмом. Можно исправить?

san
01-29-2015, 05:10 PM
Артамир, огромное спасибо!
Сов, вроде бы, пока работает без багав. Пока на демке. Прогон на тестере (без оптимизации, с настройками от балды)
46408
Отчёт не могу прикрепить-поэтому даю, как умею.
eFXO.NetStop.v1.20
MFXBroker-Demo (Build 765)

Symbol EURUSD (Euro vs US Dollar)
Period 1 Minute (M1) 2012.03.19 06:22 - 2014.12.31 00:00 (2008.01.01 - 2014.12.31)
Model Control points (a very crude method, the results must not be considered)
Parameters S=20; TP=80; Lot=0.1; Multy=2; Plus=0; LotRevers=true; useFixProfit=true; FixProfit_Amount=50; TPOnRevers=38; TR_S="==== TRADING ======================"; TR_TwiseLots=100; TR_MN=0; TR_E="===================================";

Bars in test 514622 Ticks modelled 1593843 Modelling quality n/a
Mismatched charts errors 0

Initial deposit 100000.00 Spread Current (2)
Total net profit 5858.69 Gross profit 101431.25 Gross loss -95572.56
Profit factor 1.06 Expected payoff 2.08
Absolute drawdown 8742.27 Maximal drawdown 12063.69 (11.68%) Relative drawdown 11.68% (12063.69)

Total trades 2820 Short positions (won %) 1416 (62.85%) Long positions (won %) 1404 (58.40%)
Profit trades (% of total) 1710 (60.64%) Loss trades (% of total) 1110 (39.36%)
Largest profit trade 1216.00 loss trade -2431.68
Average profit trade 59.32 loss trade -86.10
Maximum consecutive wins (profit in money) 41 (2605.88) consecutive losses (loss in money) 21 (-11139.48)
Maximal consecutive profit (count of wins) 11031.18 (37) consecutive loss (count of losses) -11139.48 (21)
Average consecutive wins 7 consecutive losses 4

san
02-24-2015, 04:46 PM
Артамир, добрый день! Баг: на демке выставляет непредсказуемую лотность. Терминал переустанавливал-не помогло.

artamir
08-30-2015, 12:01 PM
День добрый.
Если еще сов актуален, то выкладываю новую версию.
Эта версия использует библиотеку sqlite3.dll, которая идет в комплекте с совой.
Либо вы можете ее скачать с сайта разработчика: sqlite точка org

artamir
09-07-2015, 08:45 AM
Исправлены найденые ошибки и добавлено сохранение состояния советника в файл для возможности восстановить последнее состояние после выключения терминала.

artamir
09-09-2015, 06:42 AM
Исправлено сохранение состояния советника.
Добавлена возможность выставлять начальные сетки с отступом в заданное количество тейкпрофитов от текущей цены.

artamir
09-10-2015, 09:56 AM
Еще одно обновление совы, связанное с оптимизацией кода для использования в тестере стратегий.

artamir
09-15-2015, 11:27 AM
Исправлено сохранение состояния советника.

artamir
09-18-2015, 08:16 AM
Подправлен расчет цен уровней выставления тикетов основной сетки.

@trend
09-21-2015, 07:45 AM
Так а прибыль советник приносит хоть какую то что то никто не пишет...?

artamir
09-21-2015, 08:42 AM
На счет прибыли я сказать ничего не могу, т.к. являюсь лишь программистом. Но могу ответить на вопросы по работе советника.

artamir
09-22-2015, 02:53 PM
Добавлено обнуление состояния советника при смене магика.
Добавлена возможность имитации вывода средств при прогоне совы в тестере стратегий.

artamir
10-05-2015, 06:27 AM
Добавлен фикс драдаун, увеличение объема обратных тикетов

artamir
10-15-2015, 07:24 PM
Надеюсь, что последние исправления в алгоритме работы совы.

artamir
10-22-2015, 08:13 AM
Прогресс неумолимо движется вперед.
Очередная версия совы.
Постарался сократить количество запросов к SQLite, при этом переложив на плечи этой субд львиную часть работы.
Состояние совы так же сохраняется в БД.
Немного изменился принцип расчета ценовых уровней. В пред. версиях ценовые уровни рассчитывались начиная от цены тп основной сетки. В данной от цены последнего тикета основной сетки.

san
11-10-2015, 11:23 PM
artamir, спасибо!
Прибыль-то есть, но и есть дни слива-ставлю оптимизировать. Лучше всего золото и британец-доллап

@trend
11-11-2015, 06:49 AM
artamir, спасибо!
Прибыль-то есть, но и есть дни слива-ставлю оптимизировать. Лучше всего золото и британец-доллап

Если есть дни слива значит что то в этом советнике не так.Оптимизация может и не помочь.

Chyk
11-12-2015, 10:24 AM
Если есть дни слива значит что то в этом советнике не так.Оптимизация может и не помочь.

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

@trend
11-13-2015, 06:40 AM
Вот мне кажется что стабильный заработок с помощью советника это просто сказка, во всяком случае с тем советником котрый можно взять или купить в сети.

Так же так считаю потому как много всяких советников перепробовал и якобы плохих и якобы хороших.