[Архив!] Напишу любого эксперта или индикатор бесплатно. - страница 60

 

Здравствуйте! Помогите, пожалуйста, написать индикатор.

На график цены наносятся две скользящие средние. Визуальными стрелочками и алертами обозначается момент пересечения. Это реализовано в индикаторе Ma_crossover_signal_with _waw.

Надо доработать этот индикатор:

1. Зная формулы расчета мувингов, вывести на рабочую область цену закрытия для текущей (еще отстраиваемой) свечи, при которой произошло бы обратное пересечение мувингов. 

2. Вывести на рабочую область процент закрытия текущей свечи.  Например, как это реализовано в индикаторе BarTimer Final (опция BarTimer). 

Настраимаемые параметры для индикатора : метод расчета скользящих (SMA, EMA...), период скользящих. И, если возможно, ТФ: значение 0 - применяется к текущему ТФ, значения 5, 15, 30, 60.. - применяется к M5, M15, M30, H1...

Спасибо. 

 
matyushevskaya:

Здравствуйте! Помогите, пожалуйста, написать индикатор.

На график цены наносятся две скользящие средние. Визуальными стрелочками и алертами обозначается момент пересечения. Это реализовано в индикаторе Ma_crossover_signal_with _waw.

Надо доработать этот индикатор:

1. Зная формулы расчета мувингов, вывести на рабочую область цену закрытия для текущей (еще отстраиваемой) свечи, при которой произошло бы обратное пересечение мувингов.

2. Вывести на рабочую область процент закрытия текущей свечи. Например, как это реализовано в индикаторе BarTimer Final (опция BarTimer).

Настраимаемые параметры для индикатора : метод расчета скользящих (SMA, EMA...), период скользящих. И, если возможно, ТФ: значение 0 - применяется к текущему ТФ, значения 5, 15, 30, 60.. - применяется к M5, M15, M30, H1...

Спасибо.


Зачем что-то делать с индикатором заглядывающим в будущее
 
Всем привет! Помогите плиз написать советник простой основан на moving avirage. Сигнал к открытию такой, когда МА пересекает свечу ждем пока тело свечи полность выйдет из МА и ждем закрытия этого бара. если свеча закрылась выше МА то покупка если ниже то продажа.Я думаю есть такой советник в природе уже. у кого есть скиньте плиз. Настройки МА SMA20
 
arkeo:
Всем привет! Помогите плиз написать советник простой основан на moving avirage. Сигнал к открытию такой, когда МА пересекает свечу ждем пока тело свечи полность выйдет из МА и ждем закрытия этого бара. если свеча закрылась выше МА то покупка если ниже то продажа.Я думаю есть такой советник в природе уже. у кого есть скиньте плиз. Настройки МА SMA20


такой советник есть во всех МТ, только параметр shift у машки настройте как вам нужно. Хотя нет, там же не все тело свечи. Лень такую ерунду писать ))))

 
ZZZEROXXX:


такой советник есть во всех МТ, только параметр shift у машки настройте как вам нужно. Хотя нет, там же не все тело свечи. Лень такую ерунду писать ))

Для вас это 5 минут займет. Я вам копировщик сделок скину который покупал за 240 долларов

 
arkeo:
жду копировщик...
Файлы:
 
Dima_S.:
жду копировщик...
загляни в личку
 

Всем привет.

Пытаюсь составить отчёт вот в таком виде:

Но застрял на том, что никак не получается включить в отчёт баланс счёта на момент открытия позиции. На данный момент код выглядит так:

if(Trade_Report == TRUE)
{ int pos, handle;

double Swap_M, Profit_M, Swap_P, Profit_P, Commission;
double Source_LP[RA], Source_SP[RA], Acc_Bal_Close[RA], Acc_Bal_Open[RA];

handle = FileOpen("OrdersReport.csv",FILE_CSV|FILE_WRITE);

if(handle > 0)
{
FileWrite(handle,"Time Open"+","+"Time Close"+","+"Lots"+","
+"Balance Open"+","+"Balance Close"+","+"Profit($)"+","+"Profit(p)"+","
+"SOURCE_LP"+","+"SOURCE_SP");

for(pos = 0; pos < OrdersHistoryTotal(); pos++)
{ OrderSelect(pos,SELECT_BY_POS,MODE_HISTORY); //2

Swap_M = OrderSwap();
Profit_M = OrderProfit();
Commission = OrderCommission();
Swap_P = (OrderSwap()/10)/OrderLots();
Profit_P = (OrderProfit()/10)/OrderLots()+(OrderSwap()/10)/OrderLots();

if(OrderType() == OP_BUY && OrderMagicNumber() == Magic_Source_LP && OrderCloseTime() == TimeCurrent())
{ Source_LP[pos] = Profit_M+Swap_M+Commission;
Acc_Bal_Close[pos] = AccountBalance(); }

if(OrderType() == OP_SELL && OrderMagicNumber() == Magic_Source_SP && OrderCloseTime() == TimeCurrent())
{ Source_SP[pos] = Profit_M+Swap_M+Commission;
Acc_Bal_Close[pos] = AccountBalance(); }
//---------------------------------------------------------------------------------------------------------------------
if(OrderType() < 2)
{ FileWrite(handle,TimeToStr(OrderOpenTime(),TIME_DA TE|TIME_MINUTES)+","
+TimeToStr(OrderCloseTime(),TIME_DATE|TIME_MINUTES )+","
+DoubleToStr(OrderLots(),2)+","
+DoubleToStr(Acc_Bal_Open[pos],2)+","
+DoubleToStr(Acc_Bal_Close[pos],2)+","
+DoubleToStr(Profit_M+Swap_M+Commission,2)+","
+DoubleToStr(Profit_P+Swap_P+Commission,2)+","
+DoubleToStr(Source_LP[pos],2)+","
+DoubleToStr(Source_SP[pos],2)); }
}
FileClose(handle); //2

Подскажите кто-нибудь, как добавить в отчёт значения баланса на момент открытия сделки.

 
tol64:

Подскажите кто-нибудь, как добавить в отчёт значения баланса на момент открытия сделки.

если сделки открываются советником,
добавить значение баланса в комментарий ордера.

string comment_=DoubleToStr(AccountBalance(),2);
OrderSend(...comment_..);

затем на истории считывать баланс из комментария
double Balance_Open=StrToDouble(OrderComment());
 
KONDOR:


Спасибо! Очень приятно, когда кто-нибудь откликается на просьбу. ))

Элегантный и простой вариант, надо запомнить. Я на самом деле уже решил задачу, но у меня получилось немножко сложней:

void OnOff_Pos_Source_LP()
{  for(int count = 0; count < OrdersTotal(); count++)
      {  OrderSelect(count, SELECT_BY_POS, MODE_TRADES);
         if (OrderType() == OP_BUY && OrderMagicNumber() == Magic_Source_LP)
            {  Pos_Source_LP = TRUE;                     // Включить флаг основной позиции
               ticket_source_LP = OrderTicket();         // Присвоить глобальной переменной тикет текущей основной позиции
               Time_OpBar_Source_LP = Time[0];           // Запомнить время открытия свечи
               Acc_Balance_Open = AccountBalance(); }    // Запомнить значение баланса на открытии позиции
      }
}

И так можно запомнить сколько угодно. Удачи во всём!