Работа с MetaTrader4 Strategy Tester Грешки при несъответствие и архив на котировки в MT4

Майсторски клас "Работа с MetaTrader4 Strategy Tester" - част 3
Начини за справяне с грешки при несъответствие
Как да се справим с грешките при несъответствие? Има два начина: изтегляне на котировките на Meta Quotes History Data Center (HDC) и създаване на всички времеви периоди въз основа на наличната минутна история.
Първият метод е много по-лесен, но изисква интернет трафик. За да направите това, просто трябва да отидете в елемента от главното меню на MT4 „Услуга“ и да изберете подточка„Архив на котировките“или просто да натиснетеF2. В прозореца, който се отваря, изберете валутната двойка, като щракнете двукратно с левия бутон на мишката и след това върху периода "1 минута". След това щракнете върху „Изтегляне“, прочетете съобщението, което се появява, което информира, че данните ще бъдат изтеглени от сървъра на Meta Quotes, щракнете върху „OK“ и след това изчакайте изтеглянето да приключи. След като изтеглянето приключи, ще бъде зададен въпрос за преизчисляването на всички времеви рамки (периоди), на който трябва да се отговори утвърдително. В резултат на това ще получим историята на минутните котировки от 1999 г. Веднага трябва да се отбележи, че тя няма да съвпада напълно с историята на котировките на вашия брокер, въпреки че ще бъде подобна.
Вторият начин е малко по-труден за изпълнение и дава по-малко история, но ще бъдатточните котировки на вашия брокер. Отворете минутната графика на желаната валутна двойка и изтеглете историята на котировките до края, като натиснете Начало. В този случай автоматичното превъртане на диаграмата трябва да бъде деактивирано. След това в прозореца на навигатора (Ctrl + N) намерете секцията "Скриптове", а в нея скрипта "period_converter". Плъзнете го с мишката до графиката на валутната двойка. Задайте единствения входен параметър ExtPeriodMultiplier на 60 (акотрябва да създадете часови период) и щракнете върху „OK“. Изчакайте няколко секунди, докато скриптът завърши, и след това изтрийте скрипта от диаграмата - щракнете с десния бутон, за да отворите контекстното меню и изберете „Изтриване на скрипт“. За да създадете други периоди, повторете операцията със следните стойности на параметъра ExtPriodMultiplier: за M5 - 5, M15 - 15, M30 - 30, H4 - 240, D1 - 1440.
Който и метод да изберете, трябва да запомните, че за да елиминирате грешките при несъответствие в нова история (тази, която се е появила след размяна или преобразуване на историята), трябва даповторите описаните операции.
И отново резултатите от теста
Сега да се върнем към разглеждането на резултатите от теста (виж фиг. 4). Разбира се, най-интересният елемент е"Нетна печалба". Но само по себе си това означава малко. Трябва да се свърже с параметъра"Максимален теглене"- това е максималната сума пари, която е била загубена. Няма значение на какъв етап се е случило - в началото, в средата или в края на теста. В резултат на това индикаторът за максимално усвояване може да бъде по-голям от първоначалния депозит (първо спечелихме, а след това загубихме както спечелените, така и първоначалните средства).Оптималното съотношение на нетната печалба към максималното усвояване трябва да бъде около едно. Тоест, за да реализираме печалба, рискуваме приблизително същата сума. Въпреки че, разбира се, никой няма да възрази, ако такова съотношение е много по-голямо от едно. В горния пример, по пътя към спечелването на $100, загубихме $40 за определен период.
Елемент„Абсолютно усвояване“е идентичен на максималното усвояване — сумата, с която е намалял първоначалният ни депозит. Индикаторът за относително усвояване е максималното усвояване, което ви позволява да оценитезагуба като процент от първоначалния депозит.
Интерес представляват и индикаторите"Доходност"и"Очакване за печалба". Рентабилността е съотношението на общата печалба към общата загуба. Колкото по-висок е този показател, толкова по-добре (като правило стойностите са повече от две). В нашия отчет няма доходност, тъй като нямаше губещи сделки (т.е. излезе стойността „плюс безкрайност“). Очакваната стойност е нетната печалба, разделена на броя сделки. Измерва се във валутата на депозита, така че за анализ е по-добре да го конвертирате в точки (умножете по 10 за микро партиди, разделете на 10 за пълни партиди). Големите стойности на този индикатор също са по-предпочитани, докато малките стойности (по-малко от 10 точки) показват, че стратегията бързо намалява печелившите сделки и запазва нерентабилните сделки за дълго време.
Останалите показатели трябва да са ясни. Нека се докоснем само до максималния брой непрекъснати загуби. Въз основа на този показател може да се прецени колко дълги са сериите от загуби в стратегията. Наистина, на реална сметка е много трудно да издържите психически, например, 10 губещи сделки подред. До броя на транзакциите в скоби е изразът на загубите във валутата на депозита. Разгледайте тази сума и решете дали можете да рискувате толкова пари за чиста печалба. Но в нашия пример нямаше поредица от губещи сделки, тъй като има само две сделки и двете са печеливши.
Такъв малък брой сделки се обяснява с факта, че използвахме най-простия метод за тестване. Изпълнете тест на модела All Ticks, като използвате същия период от време и вижте как броят на сделките нараства до девет (вижте Фигура 5).

Ориз. 5. Доклад от тестера на стратегията по модела "Всеки тик".
Трябва също да се отбележи, че качествотосимулация, достигнахме максималната скорост от 90% (на минутния период, максималната скорост от 25%). Заедно с броя на сделките се увеличи и нетната печалба, тъй като все още нямаме неизгодни сделки. Но не се ласкайте - просто избрахме доста успешен исторически период за този експертен съветник. Освен това,никога не трябва да приемате сериозно резултатите от тестове с малък брой сделки. Минималната извадка трябва да бъде около 100 транзакции, оптималната е 1000. Освен това историческият период трябва да бъде поне една година. Тестването на този експертен съветник от началото на 2007 г. до днес ще потвърди горното. Там ситуацията е по-малко привлекателна.
Текущите резултати от теста, дори ако той все още не е приключил, могат да се видят, като отидете в разделите на прозореца на тестера"Резултати"и"Графика". Резултатите се показват ред по ред за всяка извършена операция - отваряне, промяна, затваряне на поръчка. Също така, отделен ред показва информация за задействането на стопа и печалбата на позицията. В случай на голям брой едновременно отворени позиции, за да разберете върху коя позиция е действано, е необходимо да погледнете стойността на колоната"Order", в която на всяка нова поръчка или позиция се присвоява уникален номер.
Получените резултати могат да бъдат запазени. За да направите това, изберете елемента"Запазване като отчет"от контекстното меню (за да извикате такова меню, натиснете десния бутон на мишката) на раздела "Резултати".
В раздела"Диаграма"можете да видите визуална история на промените в акаунта, където синята линия е графика на промените в баланса, а зелената линия е капитал (средства, които ще останат, когато всички позиции бъдат затворени). Ако тестването не се извършва с постоянен размер на средствата (в нашия примеробемът е постоянен — 0,1 лот), тогава в долната част на графиката се показва хистограма на промяната в обема на транзакциите.