ПредишенСледващото

[Eroshkin Юджийн, частен инвеститор]

Напиши автоматична търговия може да бъде почти всеки съвременен език за програмиране, най-важното нещо - да се установи комуникация между терминала (или Exchange шлюза) и автоматизирана система за търговия. И това изисква доста сериозни умения за програмиране. Най-достъпен начин - писане на робот Qpile език.

Плюс това, този език е, че той е просто и интегрирана директно в терминала Quik [1], което увеличава надеждността на куп "Терминал-робот." От минуси може да бъде установена липса на взаимодействие с потребителския интерфейс (това е, програмата може да се стартира и спира, но не можете да го управлявате в процеса). Също така проблематично Qpile за обработка на големи обеми от данни, която налага ограничения върху създаването на механични системи за работа с голям брой входни параметри. Но стига толкова за прости функционални стратегии на езика.

Стратегии и инструменти

Всеки робот се движи по предварително зададен алгоритъм, който е логичен вариант на стратегия за търговия. Стратегията е най-важната част от всяка машина (въпреки че обемът може да заема малка част от кода). Нейният избор - основна стъпка за изграждането на всяка една система, тя го прави печеливша система, а другият изгубването, при равни други условия. Проблемът за избора на темата от много стратегии за книги [2,3]. Целта на тази поредица от статии е процес на писане робот, който взема решения независимо от покупка / продажба, излага приложението и проверява тяхното изпълнение (но не гарантира, че той е длъжен да бъде печеливш). Какво алгоритъм за избор на система за търговия, търговец реши чисто лице. Ние считаме, че един от най-прости стратегии - търговското канал. Неговият алгоритъм е проста: ако цената е под определено ниво, което купуваме, а ако по-горе - продават. Ако кавичките са отвъд границите на канала в неблагоприятна посока за нас, ние се определи щетите.

Трябва да се отбележи, че фиксираните нива на стратегия отплаща в краткосрочен план, тъй като с течение на времето средното ниво може да се промени, а след това избраните обекти ще станат без значение. За да се реши този проблем, можете да направите някои търговски нива / динамични продажби, т.е. да ги свързват със средните за периода. За да се реализира това, че е възможно, например, с помощта на технически индикатор "пълзяща средна". Така че ние трябва да направим по-късно. Сега, обаче, ние се спре в определено ниво, следвайки принципа на прости до сложни.

За да се приложи стратегия за търговия в канала по два начина. Първият включва наблюдение на нивото на цените и експозицията на заявления за постигане на целта. Също така, можете веднага да правите поръчки, както на ниво, независимо от текущата цена, а след това прилагане. Първият метод е приложим само за инструменти, чиито цени не се променят твърде бързо, в противен случай, не може да има време за насилствено движение. Вторият метод е подходящ за всички активи, но това е необходимо във всеки един момент да наблюдават изпълнението на приложения, ако е необходимо, за да ги пренареждате или да стреля всички во (например динамично променящата се нивата на купува / продава). Първият подход е по-лесно за изпълнение, така че за сега се спирам на него. Сделка с бързите промени в цените и неизпълнение на заявления ще бъде очевидно е по-полезно да се пазарни цени, което означава, че първоначално ще бъдат определени приплъзване.

След като кодът е писано, запазете файла с разширение * .qpl, а след това на терминала Quik отворите елемент от менюто "трапезен> Portfeli-> Define Портфолио" (програма Quik нарича портфейли), или натиснете Ctrl + F10. Изберете файл, кликнете върху бутона "Open", "Изтегляне на местно ниво" и след това "Изход" (вж. Фиг. 2).

Фиг. 2Punkty меню, за да изтеглите и стартирате програми Qpile

Фиг. 3Programma, което елиминира текущото време на сървъра

Сега, след като първата програма за работа, като се започне нейното усъвършенстване: ще видите актуалните цени на предлагане / търсене на избрания инструмент, стойността на нашите нива, име и време инструмент за изпълнение в дни. Всички тези данни произтичат т.нар същата таблица (вж. "Инструмент") код. Изтеглете програмата на Quik и го стартирате. Ако всичко се изпълнява правилно, получаваме следната таблица (вж. Фиг. 4).

Фиг. 4Vyvod параметри инструмент в таблица

Имаме всички необходими данни, така че остава само да се сравни текущи цени с нашите нива. Ако цената е над горното ниво на търсене, това е сигнал за про дори ако офертата по-долу ни по-ниско ниво, което трябва да направите покупка. Подредете тази логика в кода си (вж. Код "Сравнение" се дава само на основното тяло на програмата).

Сега, нашата програма ще покаже съобщение, ако цената ще отиде извън канала. Въпреки това, те ще се появят на всеки цикъл на програмата, тоест, един път в секунда, което е неудобно да се използва. Ние замени нашите оператори на съобщения на следващите редове.

АКО PriceBid> = HiLevel SERVER_TIME = "продава"

"Ако цената е по-ниска търсенето urovnyaLOW, е необходимо да се купуват

АКО PriceOffer <= LowLevel SERVER_TIME = "BUY"

В този случай, ще бъдат показани на сигналите за покупка / продажба, но в колоната «TIME» маса.

Напишете програма, не могат да бъдат приписани на роботите, но тя може да се нарече съветник, тъй като тя следи за нивата на цените и дава препоръки за действие. Остава да се осигури функцията му на издаване на разпореждания и робота започва. Въпреки това, може да доведе до неочаквани трудности, например, загубата на връзка със сървъра, спрете търговия, липсата на средства в сметката. Те ще доведат до грешки и прекъсвания. В следващата статия ще научи нашия робот излезе от непредвидени ситуации.

Не се препоръчва веднага се опитват да търгуват с робот на реална сметка (особено в началото на начини за придобиване на софтуер опит писане), защото дори и с потенциално печеливша стратегия възможни грешки в кода, които, от своя страна, може да доведе до сериозни загуби (например, пригодени за прилагане с неправилна цена и / или обем) до нула внимание. Той е подходящ за отстраняване на грешки на кода, за да използвате демо сметка.

Qpile (ProgrammableInterfaceandLogicEnvironment) - beysikopodobny език, който има svoemarsenale оператори за dannyhiz терминални Quik и изпращане на приложения.

Трейдинг робот -kompyuternayaprogramma, производство birzhevuyuinformatsiyu в zaraneezadannomualgoritmusamostoyatelno сделки домакини resheniyao otpravlyayuschayazayavki nabirzhu контролиране ihispolnenie isledyaschaya zapozitsiyami.

Търговската сесия - периодът от време, през който провежда търгове на борсата.

Свързани статии

Подкрепете проекта - споделете линка, благодаря!