using System;
using System.Collections.Generic;
using System.Linq;
using System.IO;
using System.Text;
using System.Timers;
using System.Threading;
using XlDde;namespace ConsoleApplication2
{
class Program
{
const string service = «myDDE»;
const string candleSPOT = «SPOT»;
static void Main(string[] args)
{
using (XlDdeServer server = new XlDdeServer(service))
{
server.AddChannel(candleSPOT, new SPOTChannel());
server.Register();Console.WriteLine(«DDE server ready. Press Enter to exit.\n\n»);
Console.ReadLine();
}
}
}
// **********************************************************************
// * Классы DDE каналов с обработчиками данных *
// **********************************************************************
class SPOTChannel: XlDdeChannel
{
//static int time2 = 1000;
static int em = 7;
static int m = 1200;
static int[] NM = new int[em];
static int NMM = 0;
static int LastMinute = 0;
static int mm = 1638400;
static double[] Price_trade = new double[mm];
string[] EM_trade = new string[mm];
static int[] Time_trade_I = new int[mm];
static int[] Volume_trade = new int[mm];
static int[,] Time = new int[em,m];
static double[,] O = new double[em,m];
static double[,] H = new double[em,m];
static double[,] L = new double[em,m];
static double[,] C = new double[em,m];
static double[,] V = new double[em,m];
protected override void ProcessTable(XlTable xt)
{
//int time3 = 1000;
int[] nach = new int[em];
int nach1 = 0;
int i = 0;
int j = 0;
int s = 0;
int curHour = 0;
int curMin = 0;
int curDay = 0;
int curSec = 0;
int curDay_1 = 0;
string name;
string[] bf;
string[] EM = new string[em];
DateTime moment;
string[] Time_trade = new string[mm];
После трех междупраздничных убыточных дней торгов (с учетом 29-го апреля 4-х дней подряд), по закрытию дня 6 мая у меня включился «фильтр пилы» в RI, Si, SBER и GAZP. Пока этот фильтр включен, рассчитывать на большие прибыли (как и большие убытки) в системах на этих инструментах не приходится. И если доля моих систем в RI в моем портфеле невелика: 12% от доли Автоследования ИК Форум, т. е. 4%, то доли GAZP+SBER и Si составляют по 33% или 58% от рисковой части портфеля (62% с учетом RI). В GAZP и Si этот «фильтр» выключился только по закрытию торгов 18 мая (в Si лучше б он этого не делал :( ). Зато 20 мая по закрытию торгов «фильтр пилы» включился в GMKN, восстановив статус-кво на споте. По RI и SBER фильтр «продержался» до закрытия дня 26-го мая.
И если в Si включение «фильтра пилы» даже чуть ухудшило месячный результат, то в остальных инструментах он уменьшил убытки в 2-2,5 раза. Впрочем, как я уже написал выше, на результате Автоследования ИК Форум это отразилось слабо, так как в этом портфеле у меня стоят только мои системы на RI, в доле указанной выше. Собственно последнему портфелю и «обязано» небольшое увеличение просадки моего счета. Впрочем, пока она по прежнему далека от расчетных 15%.
Многие трейдеры на Московской бирже хотели бы автоматизировать свои торговые алгоритмы, но не знают с чего начать. А ведь давно есть проработанные решения, которые максимально облегчают первые шаги в алготрейдинге.
Язык MQL5 изначально поддерживает все торговые возможности платформы MetaTrader 5 — в нем множество торговых функций для работы с ордерами, позициями и торговыми запросами. При этом не имеет значения, на каком рынке вы торгуете - фьючерсы, акции, опционы и т.д.
Средствами MQL5 вы можете создать торговый запрос и отослать его на сервер с помощью функций OrderSend() или OrderSendAsync(), получить результат его выполнения, просмотреть торговую историю, узнать спецификацию контракта для инструмента, обработать
Окей, 100 плюсов есть. Обещанный способ угадывания гэпа.
Идем к сайлентбобу: smart-lab.ru/blog/206454.php
Что видим:
1) только лонг
2) работает с 2011 года, до этого времени нет
3) сделок с весны 2011 до сентября 2014 мало — 123 штуки — событие с одной стороны редкое, а с другой вполне себе равномерно распределено по году (смотрим эквити). Процент выигрыша 65, профит фактор 2,77.
4) паттерн достаточно очевидный чтобы его было не жалко отдать сматрлабовцам.
Какое у нас редкое равномерно распределенное очевидное событие? День недели. Строим простейший скрипт и смотрим есть ли закономерности в Си по дням недели.
Чего видим? в пятницу у нас гэп скорее вверх, причем профит фактор сразу 2,56. Смотрим на эквити:
Все красиво, похоже предположение верное. На следующем шаге добавляем фильтр в стиле «на момент входа снизились не более чем на определенную величину от закрытия предыдущего дня». Часть сделок отсеиваем, улучшаем ПФ на 0,39. Радуемся, исследуем дальше, встраиваем в свои системы.
А заодно начинаем думать почему так может происходить, и почему до 2011 было по-другому. До мая 2010 пятничный гэп в целом повторял движение самого Си, а с мая 2010 до начала 2011
На смартлабе очень мало чего можно почитать начинающему алготрейдеру. Если кто и пишет — все больше эквити выкладывают, а на идеи стратегий даже не намекают. Один из товарищей которых я читаю — silentbob ( http://smart-lab.ru/profile/silentbob/ ). Он периодически выкладывает что-то из своих наблюдений, на основе которых вполне пишутся рабочие стратегии.
В своё время он предлагал выложить выложить устойчивый метод угадывания гэпа вверх в Си за 350 плюсиков
smart-lab.ru/blog/206454.php
За плюсики смартлабовцы метод не выкупили и для многих он остался загадкой)) Эквити у метода была вот такая:
Идея простая: покупаем в 23-45 при выполнении определенных условий и продаем в 10-15. Я потратил какое-то время и постарался найти стратегию с похожими параметрами. Совсем такой же у меня не получилось, но что то все таки нашел: