UMNICK - адаптивен съветник

Описанието на същността на процеса от автора е интригуващо още от първите редове: „Обща теория на търговията (GTT): за да реализирате печалба, трябва да търгувате собствената си функция, като я синхронизирате с пазара.“ След като прочетете този израз, има желание с готов калкулатор да гризе най-твърдия гранит на науката "Висша математика". Но следващото изречение ме кара да се охладя малко: „Приложеният EA демонстрира най-простите принципи за използване на OTT и адаптиране към пазара.“ Все едно, "най-простото" ... Тогава ни е още по-трудно. Въпреки това, за да бъде по-строг, VictorArt предоставя екран на патент, който защитава компонентите на цифровия мозък, чиито елементи са демонстрирани в експертния съветник. Е, това е убедително. Но нека преминем към тестването на това чудо на кибернетичната мисъл. Авторът предлага периода H4 и двойката EURUSD за тази (2009) година (виж Фиг. 1):

Ориз. 1. Резултати от теста на автора на двойката EURUSD.

За съжаление 54 сделки не е обемът, по който може да се съди за каквото и да било. Ще отидем по-далеч и ще проверим EA на по-дълбока история - от 2006 г. (виж Фиг. 2):

Тук картината не е толкова розова (1256 долара печалба срещу 1897 долара усвояване). В допълнение, всичко това за по-малко от четири години (среден добив от около 300 точки на година).

Както винаги, ние се опитваме да разберем същността наEA кода и, ако е възможно, се опитваме да го подобрим. Е, в идеалния случай бих искал да подобря резултатите от теста.

Първо, трябва да намерите секцията от код, която отговаря за вземането на решение за завършване на транзакцията. Колкото и да е странно, се оказва много компактен:

bool NextBar() bool rt = false; двойна цена = (Отваряне[1]+Високо[1]+Ниско[1]+Затваряне[1])/4; if ( MathAbs(price-pricePrev) >= StopBase ) pricePrev = цена; rt = вярно; > връщане(rt); >

Ако последната сделка е била непечеливша, тогава посоката на следващата сделка се обръща. Ако сделката е печеливша, тогава посоката се запазва. Няма други критерии за отваряне на дълги или къси сделки в EA.

В резултат на това нивата на стоп и печалба се изчисляват като средноаритметично на съответните масиви arrayProfit и arrayLoss. Вярно е, че средната стойност се взема при условие, че общата сума на стойностите на всеки масив надвишава половината от стойността на StopBase.

След отваряне на сделка съветникът не извършва допълнителен анализ, за ​​да получи сигнали за принудително затваряне. Очаква се спирането или печалбата на транзакцията да бъдат задействани.

Затова вмъкваме следния код в тялото на функцията NextBar:

Сигнал = 0; двоен PSAR1 = iSAR(Символ(), 0, SARSстъпка, SARMмаксимум, 1); двоен PSAR2 = iSAR(Символ(), 0, SARSстъпка, SARMмаксимум, 2); ако (PSAR1 Open[2]) Сигнал = 1; връщане (вярно); > if (PSAR1 > Open[1] && PSAR2 Suite 11, Second Floor, Sound & Vision House, Francis Rachel Str. Victoria Victoria, Mahe, Seychelles +7 10 248 2640568