Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 6. - страница 1113
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Для выходных нужен скрипт.
Я работаю по будням. Поэтому пользуюсь индикатором. Даю ему список инструментов, и он запрашивает котировки то тому таймфрейму, на чарте которого он висит. С обработкой ошибок не заморачиваюсь. Через десяток минут все устаканивается.
Да, совершенно забыл. Если нужно сохранять историю, то чарт по инструменту обязательно должен быть открыт.
Рынок запустился. Но ни вызов CopyTime, ни ArrayCopySeries не подкачивает автоматом историю по инструментам из MarketWatch...
Чарты по инструментам ни разу не открывались.
Должно же быть какое-нибудь решение.
Вот например символ AUDCAD. По нему не было открытых чартов. Если вручную открыть чарт AUDCAD H1 и понаживать кнопки - истоия подкачивается. На других таймфреймах так же - только в ручном режиме, в автоматическом не желает.
Так оно хоть и с костылем, но работает и подкачка истории для новых символов происходит.
Добрый день, уважаемые форумчане. Прошу не бить больно, просто пишу диплом и хочу провести небольшое социологическое исследование. Здесь наверняка есть люди однажды или несколько раз купившие советник. Скажите пожалуйста, какие критерии для Вас были важными и решающими при покупке? Например, может быть это:
-тип советника (трендовый, сеточник, мартингейл, скальпер...)
-история в тестере стратегий
-какие-то особенные функции советника
-подробность описания работы и настроек советника
-рейтинг продавца
-стоимость советника
-акции и скидки
или может быть что-то другое.
И давольны ли Вы остались покупкой?
Большое спасибо за понимание и ответы
Добрый день, уважаемые форумчане. Прошу не бить больно, просто пишу диплом и хочу провести небольшое социологическое исследование. Здесь наверняка есть люди однажды или несколько раз купившие советник. Скажите пожалуйста, какие критерии для Вас были важными и решающими при покупке? Например, может быть это:
-тип советника (трендовый, сеточник, мартингейл, скальпер...)
-история в тестере стратегий
-какие-то особенные функции советника
-подробность описания работы и настроек советника
-рейтинг продавца
-стоимость советника
-акции и скидки
или может быть что-то другое.
И давольны ли Вы остались покупкой?
Большое спасибо за понимание и ответы
Подскажите, где ошибка? Значения элементов массива Koef[] рассчитывается, каждому элементу присваивается значение. Почему не присваивается Buffer1[]???
#property link "https://www.mql5.com"
#property version "1.00"
#property strict
#property indicator_separate_window
#property indicator_buffers 1
#property indicator_level1 0.8
#property indicator_level2 -0.8
#property indicator_levelcolor Black
#property indicator_color1 Blue
#property indicator_minimum -1
#property indicator_width1 2
#property indicator_style1 0
#property indicator_maximum 1
double Buffer1[];
//+------------------------------------------------------------------+
//| Custom indicator initialization function |
//+------------------------------------------------------------------+
int init()
{
//--- indicator buffers mapping
SetIndexBuffer(0, Buffer1);
SetIndexStyle(0, DRAW_LINE);
return(0);
//---
}
//+------------------------------------------------------------------+
//| Custom indicator iteration function |
//+------------------------------------------------------------------+
int start()
{
int n=25; // количество элементов в массиве(для периода H1 n=25, тк i<n)
int m=24; // количество массивов(для периода H1 m=24, тк p=0, p<m)
int w=18; // количество заков после запятой
double Price_CloseX[][24]; // Массив цен закрытия 1 пары
double Price_CloseY[][24]; // Массив цен закрытия 2 пары
double dx[][24]; // Отклонение от среднего значения для пары 1 dx
double dy[][24]; // Отклонение от среднего значения для пары 2 dy
double dx2[][24]; // Квадрат отклонения ср.значения dx2
double dy2[][24]; // Квадрат отклонения ср.значения dy2
double dxdy[][24]; // Произведение dx и dy
double sum_x[][24];
double sum_y[][24];
double Mx[][24]; // Массив среднего значения цен закрытия пары 1 Mx
double My[][24]; // Массив среднего значения цен закрытия пары 2 My
double Edx2[][24]; // Сумма квадратов отклонений Edx2
double Edy2[][24]; // Сумма квадратов отклонений Edy2
double Edxdy[][24]; // Сумма произведений отклонений Edxdy
double Koef[];
ArrayResize(Price_CloseX, n);
ArrayResize(Price_CloseY, n);
ArrayResize(dx, n);
ArrayResize(dy, n);
ArrayResize(dx2, n);
ArrayResize(dy2, n);
ArrayResize(dxdy, n);
ArrayResize(sum_x, n);
ArrayResize(sum_y, n);
ArrayResize(Mx, n);
ArrayResize(My, n);
ArrayResize(Edx2, n);
ArrayResize(Edy2, n);
ArrayResize(Edxdy, n);
ArrayResize(Koef, n);
string sym_x="EURUSD";
string sym_y="GBPUSD";
for(int i=1; i<n; i++)
{
for(int p=0; p<m; p++)
{
Price_CloseX[i][p]=iClose(sym_x, PERIOD_H1, i+p);
Price_CloseY[i][p]=iClose(sym_y, PERIOD_H1, i+p);
}
}
for(int i=1; i<n; i++)
{
for(int p=0; p<m; p++)
{
sum_x[i][p]=sum_x[i][p-1]+Price_CloseX[i][p];
sum_y[i][p]=sum_y[i][p-1]+Price_CloseY[i][p];
}
}
for(int i=1; i<n; i++)
{
for(int p=0; p<m; p++)
{
Mx[i][p]=sum_x[p+1][m-1]/(n-1);
My[i][p]=sum_y[p+1][m-1]/(n-1);
}
}
for(int i=1; i<n; i++)
{
for(int p=0; p<m; p++)
{
dx[i][p]=Price_CloseX[i][p]-Mx[i][p];
dy[i][p]=Price_CloseY[i][p]-My[i][p];
}
}
for(int i=1; i<n; i++)
{
for(int p=0; p<m; p++)
{
dx2[i][p]=(dx[i][p]*dx[i][p])*1000000;
dy2[i][p]=(dy[i][p]*dy[i][p])*1000000;
}
}
for(int i=1; i<n; i++)
{
for(int p=0; p<m; p++)
{
dxdy[i][p]=(dx[i][p]*dy[i][p])*1000000;
}
}
for(int i=1; i<n; i++)
{
for(int p=0; p<m; p++)
{
Edx2[i][p]=(Edx2[i-1][p]+dx2[i][p]);
Edy2[i][p]=(Edy2[i-1][p]+dy2[i][p]);
Edxdy[i][p]=(Edxdy[i-1][p]+dxdy[i][p]);
}
}
for(int p=0; p<m; p++)
{
Koef[p]=Edxdy[n-1][p]/sqrt(Edx2[n-1][p]*Edy2[n-1][p]);
Buffer1[p]=Koef[p];
Alert("Коэффициент корреляции Пирсона между ", sym_x, " и ", sym_y, " равен ", DoubleToString(Koef[p], w));
Alert("Значение буфера ", p, " равно ", Buffer1[p]);
}
return(0);
}
Доброго времени суток! Правильно я понимаю, что при тп=2, сл=20 и спред=2 вероятность тп=(2+2)/(20-2)=0.22.... или ещё нужно умножать на какой-то коэффициент? А если вер. тп=0.22, то в идеале можно открыть 3 сделки подряд с такими параметрами, а 4 сделку пропускать?
Ссылку не дам, люди считают по-разному. Рекомендую исходить из принципа безнадежности постройки Грааля. В данном случае, на заданных TP и SL, его можно сформулировать так:
в отсутствие спреда матожидание прибыли в любой серии сделок с одинаковыми SL и одинаковыми TP равно нулю.
Матожидание прибыли без спреда равно P(TP)*TP-P(SL)*SL=0, где SL и TP дистанции от уровня окрытия сделки до их уровней, P - вероятность завершения сделки соответственно по SL либо по TP.
Из условия завершения всех сделок P(TP)+P(SL)=1, откуда P(TP)*TP-(1-P(TP))*SL=0, P(TP)*(TP+SL)=SL и
P(TP)=SL/(SL+TP).
Чтобы учесть спред, надо заменить нулевое матожидание прибыли на ожидание убытка размером в спред, P(TP)*TP-P(SL)*SL=-Spread, и вывести нужную формулу.
Ссылку не дам, люди считают по-разному. Рекомендую исходить из принципа безнадежности постройки Грааля. В данном случае, на заданных TP и SL, его можно сформулировать так:
в отсутствие спреда матожидание прибыли в любой серии сделок с одинаковыми SL и одинаковыми TP равно нулю.
Матожидание прибыли без спреда равно P(TP)*TP-P(SL)*SL=0, где SL и TP дистанции от уровня окрытия сделки до их уровней, P - вероятность завершения сделки соответственно по SL либо по TP.
Из условия завершения всех сделок P(TP)+P(SL)=1, откуда P(TP)*TP-(1-P(TP))*SL=0, P(TP)*(TP+SL)=SL и
P(TP)=SL/(SL+TP).
Чтобы учесть спред, надо заменить нулевое матожидание прибыли на ожидание убытка размером в спред, P(TP)*TP-P(SL)*SL=-Spread, и вывести нужную формулу.
Спрашивая про коэффициент, мне помнится что-то типа C(n,k), т.е. P(x)=C(n,k)*P(y/x).... Вообщем запутался... Надо книжку листать.
Если речь идет о книгах по теории вероятности, а, судя по намеку на число сочетаний из n по k C(n,k), это комбинаторика, то в теории вероятности ответов на заданный вопрос нет. Конкретно формулу P(TP)*TP-P(SL)*SL=0
я получил эмпирически. В поиске такого сочетания SL и TP, которое дало бы хоть самое малое статистически значимое отклонение от нуля. База тиковых историй по 25 валютным парам собиралась около 300 недель с 50-60 дилинговых центров, в ней тогда было 50 миллиардов тиков. Способов регулярного или псевдослучайного открытия сделок перебрал десятки. Курсом без спреда считался средний арифметический Бид и Аск.
Если речь идет о книгах по теории вероятности, а, судя по намеку на число сочетаний из n по k C(n,k), это комбинаторика, то в теории вероятности ответов на заданный вопрос нет. Конкретно формулу P(TP)*TP-P(SL)*SL=0
я получил эмпирически. В поиске такого сочетания SL и TP, которое дало бы хоть самое малое статистически значимое отклонение от нуля. База тиковых историй по 25 валютным парам собиралась около 300 недель с 50-60 дилинговых центров, в ней тогда было 50 миллиардов тиков. Способов регулярного или псевдослучайного открытия сделок перебрал десятки. Курсом без спреда считался средний арифметический Бид и Аск.