Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 6. - страница 541

 

Добрый день.

Есть ли какой то физический смысл от деления быстрого АТР на медленный ?

или что мы получил в результате

почему спрашиваю - видел такой индикатор

 
rusa:

Может у кого нибудь есть такой советник.

1. открывает одновременно два разных ордера бай и сел

2. когда один закроется по профиту . опять открывает два разных ордера бай и сел и т.д

3. с минусовыми ордерами ничего не надо делать! вроде всё просто . может кто то сможет написать? буду очень благодарна!

это как?
 

Привет! Осваиваю mql4, когда то кодил простые вещи, потом закинул надолго, сейчас все с нуля прохожу снова.

1) Язык то щас смотрю немного обновился, но учебник еще старый, существует ли учебник под обновленный язык?

2) Это язык с mql5?

3) Стоит ли учиться по учебнику mt5?

4) МТ5 существует уже очень долго, и все пишут какой он прекрасный, но почему, дц его не использует практически, в чем причина?

5) Хочу торговать портфелем роботов, возможно ли в мт4 получать статистику отдельно по каждому?

6) Реально ли получить синтетический инструмент в реальном времени и торговать по нему?

7) Скажите, есть ли преимущества с пятым знаком? (просто давно очень не торговал). Как я понял, никакого, потому что волатильность становится ниже, соответственно и уровень спреда получается такой же?

8) Приведите пожалуйста код, для получения средней волатильности по инструменту? Заполняю свой массив выражением High[i] - Low[i], ну потом среднее вычислить почему то не срастается, равно 0 и хоть убей. Может я чего усложняю, может есть какая-нибудь стандартная функция или более элегантный код?

9) Возможно ли вычислить средний спред по каждому бару за всю историю? Полагаю, что да и пока что, это кажется очень просто, пока этим не занимался,вопрос ин адванс так сказать, может уже есть готовый код, чтобы не изобретать велосипед?

10) Хочу иметьразличные тф, 10 сек, 30 сек.. знаю, что это реально, но по-моему, сейчас это можно очень просто делать в новом языке, я имею ввиду есть какая-то стадратная фунция для этого?

11) Смогу ли тестить экспы на истории своего тф?

12) Есть ли в мт набор функция для работы с текстовыми файлами, запись нужных мне вычислений и тп?

Пока вроде все из того что вспомнил, ваша помощь будет просто неоценима! Спасибо ин адванс!

 
pako:
это как?


как то так! пробую на реале эту систему. надо всё время следить за торговлей.

Нужен советник в помощь.

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

когда открыты два ордера в терминале один ордер закроется по тейк профиту !

И сразу же надо открыть опять два ордера бай и селл и так всё время .

ордер с минусом остаётся в торговле

всё ! Думаю заказать за деньги,но проблема с пополнением вебмани.

может кто то не пожалеет своё драгоценное время и напишет код советника?

 
rusa:


как то так! пробую на реале эту систему. надо всё время следить за торговлей.

Нужен советник в помощь.

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

когда открыты два ордера в терминале один ордер закроется по тейк профиту !

И сразу же надо открыть опять два ордера бай и селл и так всё время .

ордер с минусом остаётся в торговле

всё ! Думаю заказать за деньги,но проблема с пополнением вебмани.

может кто то не пожалеет своё драгоценное время и напишет код советника?


ну ты щас примерно описал экономику Америки... все долги копятся а поступления уходят на приобретения нового долга..

я так пробовал вообще не прет


extern int Profit=1;

extern double Lot=0.1;

extern int Stop=98;

extern int Take=70;

extern int Slip=10;

extern int Magic=0;

int n;


int start() {

//счетчик ордеров

for(int m=1; m<=OrdersTotal(); m++)

{

OrderSelect(m-1,SELECT_BY_POS);

int mn=OrderMagicNumber();

int openselllim,openbuylim, opensell,openbuy, openbuystop,opensellstop;


if (mn==Magic && OrderType()==OP_BUY) openbuy=openbuy+1;

if (mn==Magic && OrderType()==OP_SELL)opensell=opensell+1;

if (mn==Magic && OrderType()==OP_BUYLIMIT) openbuylim=openbuylim+1;

if (mn==Magic && OrderType()==OP_SELLLIMIT) openselllim=openselllim+1;

if (mn==Magic && OrderType()==OP_BUYSTOP)openbuystop=openbuystop+1;

if (mn==Magic && OrderType()==OP_SELLSTOP) opensellstop=opensellstop+1;

}

if (openbuy+opensell<n||OrdersTotal()==0)

{n=openbuy+opensell;

OrderSend(Symbol(), OP_SELL, Lot, Bid, Slip, 0, 0, "SELL", Magic, 0,Red);

OrderSend(Symbol(), OP_BUY, Lot, Ask, Slip, 0, 0, "BUY", Magic, 0,Blue);

}

if (openbuy+opensell>n){n=openbuy+opensell;}

clospoint();

return(0);}


void clospoint ()

{int ask, bid, open;

double point;

for (int i=OrdersTotal()-1; i>=0; i--)

{

if (!OrderSelect(i,SELECT_BY_POS,MODE_TRADES)) break;

if (OrderType()==OP_BUY)

{

point=MarketInfo(OrderSymbol(),MODE_POINT);

if (point==0) break;

bid=MathRound(MarketInfo(OrderSymbol(),MODE_BID)/point);

open=MathRound(OrderOpenPrice()/point);

if (bid-open<Profit) continue;

OrderClose(OrderTicket(),OrderLots(),bid*point,Slip);

}

if (OrderType()==OP_SELL)

{

point=MarketInfo(OrderSymbol(),MODE_POINT);

if (point==0) break;

ask=MathRound(MarketInfo(OrderSymbol(),MODE_ASK)/point);

open=MathRound(OrderOpenPrice()/point);

if (open-ask<Profit) continue;

OrderClose (OrderTicket(),OrderLots(),ask*point,Slip);

}

}}

c тебя шоколадко

 

Всем привет, скажите пожалуйста как в функции Coment() считаются параметры???

Вот выдержка из справочника: "Любые значения, разделенные запятыми. Для разделения выводимой информации на несколько строк можно использовать символ перевода строки "\n" либо "\r\n". Количество параметров не может превышать 64..." каких параметров?????

 
tench72:

Всем привет, скажите пожалуйста как в функции Coment() считаются параметры???

Вот выдержка из справочника: "Любые значения, разделенные запятыми. Для разделения выводимой информации на несколько строк можно использовать символ перевода строки "\n" либо "\r\n". Количество параметров не может превышать 64..." каких параметров?????

тех самых, разделённых запятыми.
 
evillive:
тех самых, разделённых запятыми.

Я не задавался таким вопросом, не знаю. А если так?

string com = "тра-та-та";

Comment(com);
Сколько будет учтено символов в комменте?
 
AlexeyVik:

Я не задавался таким вопросом, не знаю. А если так?

Сколько будет учтено символов в комменте?

ну написано же в справке...
 

Добрый день! Есть такой код:

#import "kernel32.dll"
   int GlobalAlloc(int Flags, int Size);
   int GlobalLock(int hMem);
   int GlobalUnlock(int hMem);
   int GlobalFree(int hMem);
   int lstrcpyA(int ptrhMem, string Text);
#import


#import "user32.dll"
   int OpenClipboard(int hOwnerWindow);
   int EmptyClipboard();
   int CloseClipboard();
   int SetClipboardData(int Format, int hMem);
#import

#define GMEM_MOVEABLE   2
#define CF_TEXT         1

// Copies the specified text to the clipboard, returning true if successful
bool CopyTextToClipboard(string Text)
{
   bool bReturnvalue = false;
   
   // Try grabbing ownership of the clipboard 
   if (OpenClipboard(0) != 0) {
      // Try emptying the clipboard
      if (EmptyClipboard() != 0) {
         // Try allocating a block of global memory to hold the text 
         int lnString = StringLen(Text);
         int hMem = GlobalAlloc(GMEM_MOVEABLE, lnString + 1);
         if (hMem != 0) {
            // Try locking the memory, so that we can copy into it
            int ptrMem = GlobalLock(hMem);
            if (ptrMem != 0) {
               // Copy the string into the global memory
               lstrcpyA(ptrMem, Text);            
               // Release ownership of the global memory (but don't discard it)
               GlobalUnlock(hMem);            

               // Try setting the clipboard contents using the global memory
               if (SetClipboardData(CF_TEXT, hMem) != 0) {
                  // Okay
                  bReturnvalue = true;   
               } else {
                  // Failed to set the clipboard using the global memory
                  GlobalFree(hMem);
               }
            } else {
               // Meemory allocated but not locked
               GlobalFree(hMem);
            }      
         } else {
            // Failed to allocate memory to hold string 
         }
      } else {
         // Failed to empty clipboard
      }
      // Always release the clipboard, even if the copy failed
      CloseClipboard();
   } else {
      // Failed to open clipboard
   }

   return (bReturnvalue); 

}

Функция работает в принципе, но пишет в буфер только один символ из строки Text. Что подправить чтобы писала всю строку?

Спасибо!