[ВНИМАНИЕ, ТЕМА ЗАКРЫТА!] Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда. - страница 731

 
artmedia70:

А ждёт он их с неба когда упадут??? :)) Если закрыл одну в профит, потом стоит ждёт убыточные!!!!????!!!! Откуда (???) они возьмутся если только после них торговать начинает). Значит до них он закрыл прибыльную и остановил торговлю в ожидании убыточных...

Совершенна сбивающая наповал логика, либо ваше толкование...


Абсолютно верно:) он должен ждать 2 убыточных, чтобы потом открыться :) Теория основанна на статистике и теории вероятности.
 
artmedia70:

А ждёт он их с неба когда упадут??? :)) Если закрыл одну в профит, потом стоит ждёт убыточные!!!!????!!!! Откуда (???) они возьмутся если только после них торговать начинает). Значит до них он закрыл прибыльную и остановил торговлю в ожидании убыточных...

Совершенно сбивающая наповал логика, либо ваше толкование...


Согласен, нифига не понятно,.... кто должен торговать откуда сделки берутся, ......... зачем сначала эмулировать 2 убыточных сделки до этого, а потом торговать не опираясь на эти 2 убыточные сделки,.....
 

Речь, видимо, о виртуальных сделках.

Объекты на график кидать, за ними следить. Наверное.

 
cyclik33:

Абсолютно верно:) он должен ждать 2 убыточных, чтобы потом открыться :) Теория основанна на статистике и теории вероятности.  

а откуда ему взять убыточные сделки,если последняя которуу он сам завершил будет прибыльная?
 
Abzasc:

Речь, видимо, о виртуальных сделках.

Объекты на график кидать, за ними следить. Наверное.


я бы понял если бы он сам бы совершил 2 сделки руками убыточные,. советник бы их смоделировал, по своему и начал бы на основании моделей искать вход,.. вот тгда есть логика а так ???????
 

Добрый вечер, подскажите пожалуйста как правильно алерт поставить в индикатор, а то всё перепробовал, то на каждом тике сигналит, то вовсе не сигналит

//+------------------------------------------------------------------+
//| i-3CCI-h.mq4 |
//| johnfantom & KimIV |
//| http://www.kimiv.ru |
//| |
//| 02.01.2006 CCI с 3-х ТФ в одном флаконе. |
//+------------------------------------------------------------------+
#property copyright "johnfantom & KimIV"
#property link "http://www.kimiv.ru"

#property indicator_separate_window
#property indicator_buffers 1
#property indicator_color1 DodgerBlue
#property indicator_maximum 1.4
#property indicator_level1 0
#property indicator_minimum -1.2

//------- Внешние параметры индикатора -------------------------------
extern int CCI_Period_0 = 14; // Период CCI для текущего ТФ
extern int Level_0 = 100; // Уровень CCI для текущего ТФ
extern int TF_1 = 60; // Количество минут первого ТФ
extern int CCI_Period_1 = 14; // Период CCI для первого ТФ
extern int Level_1 = 100; // Уровень CCI для первого ТФ
extern int TF_2 = 240; // Количество минут второго ТФ
extern int CCI_Period_2 = 14; // Период CCI для второго ТФ
extern int Level_2 = 100; // Уровень CCI для второго ТФ
extern int NumberOfBars = 10000; // Количество баров обсчёта (0-все)
extern bool EmailON = TRUE;
extern bool SoundON = TRUE;

//------- Буферы индикатора ------------------------------------------
double buf0[];

//+------------------------------------------------------------------+
//| Custom indicator initialization function |
//+------------------------------------------------------------------+
void init() {
IndicatorDigits(1);

SetIndexBuffer(0, buf0);
SetIndexLabel (0, "i-3CCI-h");
SetIndexStyle (0, DRAW_HISTOGRAM, STYLE_SOLID, 2);
SetIndexEmptyValue(0, 0);
}

//+------------------------------------------------------------------+
//| Custom indicator deinitialization function |
//+------------------------------------------------------------------+
void deinit() {
Comment("");
}

//+------------------------------------------------------------------+
//| Custom indicator iteration function |
//+------------------------------------------------------------------+
void start() {
double cci0, cci1, cci2;
double alertTime;
int nb1, nb2;
int LoopBegin, sh;

if (NumberOfBars==0) LoopBegin=Bars-1;
else LoopBegin=NumberOfBars-1;
LoopBegin=MathMin(Bars-1, LoopBegin);

for (sh=LoopBegin; sh>=0; sh--) {
nb1=iBarShift(NULL, TF_1, Time[sh], False);
nb2=iBarShift(NULL, TF_2, Time[sh], False);

cci0=iCCI(NULL, 0, CCI_Period_0, PRICE_CLOSE, sh);
cci1=iCCI(NULL, TF_1, CCI_Period_1, PRICE_CLOSE, nb1);
cci2=iCCI(NULL, TF_2, CCI_Period_2, PRICE_CLOSE, nb2);

if (cci0>Level_0 && cci1>Level_1 && cci2>Level_2) { buf0[sh]=1;
if (buf0[sh]!=1 && alertTime != Time[0]) { alertTime = Time[0];
if (EmailON != TRUE) SendMail ("Signal", "UP");
if (SoundON != TRUE) Alert ("Signal UP");}
}
if (cci0<-Level_0 && cci1<-Level_1 && cci2<-Level_2) { buf0[sh]=-1;
if (buf0[sh]!=-1 && alertTime != Time[0]) { alertTime = Time[0];
if (EmailON != TRUE) SendMail ("Signal", "UP");
if (SoundON != TRUE) Alert ("Signal UP");}
}
}

}
//+------------------------------------------------------------------+

 
Infinity:

я бы понял если бы он сам бы совершил 2 сделки руками убыточные,. советник бы их смоделировал, по своему и начал бы на основании моделей искать вход,.. вот тгда есть логика а так ???????

А так вешаем объект,  запоминаем цену и следим за разницей.

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

 
Abzasc:

А так вешаем объект,  запоминаем цену и следим за разницей.

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


ну такой мотод я знаю, он кстати тут на форуме описан гдет в статьях вроде, а логика всеравно непонятна,.... тогда следовало бы моделировать сделки надеясь что они будут прибыльны и на опять таки этом моделировании искать такойже ситуации, а то получается 2 убыточных, а ищем прибыльную. Если это и основано на "как сказал автор" статистике и вероятности так все гораздо проще просто по вероятности открывать сделки или еще как
 

Сейчас обьясню с примером.

  предположим стратегия такова: Советник открывает сделку в начале каждого дня. если предыдущий день был бычьим - сделка на бай . если медвежьим то на селл.

нужно :

1 советник начинает работу.

2 если два предыдущих дня были медвежьими, мы открывались (якобы) на селл, но ловили лося(тоже якобы),   то сегодня мы реально открываемся на бай или на селл.

3 если у нас не было 2 виртуальных лосей то советник ждет пока они появятся, и после этого открывает позицию.

Стратегия естесственно должна быть другой, однако смысл таков. 

 

Про эмуляцию убыточных сделок вё понятно. Советник отлавливает торговый сигнал, например в лонг. Запоминает точку открытия воображаемого ордера и его стоп-приказы. Далее следит за тиками. Если цена коснулась стопа виртуального ордера, то сделка записывается как убточная. Если тейка - то записывается как профитная. Осталось лишь выяснить по какой торговой системе должны отслеживатьсяточки установки воображаемых ордеров.

cyclik33, я этим точно заниматься не буду - работёнка сейчас есть. Вопросы я задал и коммент этот отписал просто чтоб внести яносность. А то у многих людей наблюдаются сложности с чётким формулированием задач.

Удачи Вам в поиске альтруиста - идея Ваша вполне осуществима в программном коде. 

Причина обращения: