Скачать MetaTrader 5
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Как правильно создать свой сигнал и стать поставщиком
slipkorn
49
slipkorn 2010.10.26 16:19 

1) Смотрим код: 

double Open[];
int Open_handle;
MqlTradeRequest Request;
MqlTradeResult Result; 
bool result;
int OnInit()
 {
Open_handle=CopyOpen(NULL,PERIOD_CURRENT,0,100,Open); ArraySetAsSeries(Open,true);
 return(0);
 }
void OnTick()
  {
//---
Request.price=SymbolInfoDouble(Symbol(),SYMBOL_BID); <--------------Улыбаемся и машем
Request.symbol=_Symbol; 
Request.tp=SymbolInfoDouble(Symbol(),SYMBOL_BID)+0.001;
Request.sl=SymbolInfoDouble(Symbol(),SYMBOL_BID)-0.001;  
Request.volume=1;
Request.action=TRADE_ACTION_DEAL;<--------------------------------Cap was where
Request.type=ORDER_TYPE_BUY;
Request.type_filling=ORDER_FILLING_AON;  
OrderSend(Request,Result);
}

2)Начинаем ловить себя на диком чустве гордости за свои умственные способности, увидев как какой-то школьник ставит Price в ордере по рыночной. 

3)Особо скучающие проверят... удивятся 

К сути: Без этой строки ордер не ставится (пишет реальную цену и 0.000)

Едем ближе к сабжу. Запуская этот код в тестере мы видим... Нет не видим.

started

connecting

connected

authorized

EURUSD и тд

disconnected

Вооружившись фантастической семеркой бубнов дописываем к началу кода

#include <Trade\Trade.mqh>
#include <Trade\SymbolInfo.mqh>
#include <Trade\PositionInfo.mqh>
#include <Trade\AccountInfo.mqh>

Вуаля... заработало. Почему? Это мне и интересно.

З.Ы. Обещаный сферический в вакууме график так и не появился. (комментарий об этом мне тоже интересен) 

Rashid Umarov
Админ
6600
Rashid Umarov 2010.10.26 16:32  
Ищите ошибку у себя.

Rashid Umarov
Админ
6600
Rashid Umarov 2010.10.26 18:37  
Rosh:
Ищите ошибку у себя.

Прежде чем написать это, я пытался воспроизвести такое поведение в онлайне и в тестере. Не воспроизвелось. Если у Вас есть что добавить дополнительно - сообщите, пожалуйста.
slipkorn
49
slipkorn 2010.10.27 11:51  
Скрин в студию
slipkorn
49
slipkorn 2010.10.27 12:03  

А так проходит тестирование...

Этот скрин показывает тестирование 2го варианта 

slipkorn
49
slipkorn 2010.10.27 12:13  

Скрин тестирования 1го варианта 

Victor Kirillin
491
Victor Kirillin 2010.10.27 12:14  

1. Для начала. Не нужно покупать по биду (покупайте по аску).

2. sl и tp выставляйте не ближе чем SymbolInfoInteger(_Symbol,SYMBOL_TRADE_STOPS_LEVEL)*SymbolInfoDouble(_Symbol,SYMBOL_POINT ) от текущей цены.

Документация по MQL5: Стандартные константы, перечисления и структуры / Состояние окружения / Информация об инструменте
Документация по MQL5: Стандартные константы, перечисления и структуры / Состояние окружения / Информация об инструменте
  • www.mql5.com
Стандартные константы, перечисления и структуры / Состояние окружения / Информация об инструменте - Документация по MQL5
Rashid Umarov
Админ
6600
Rashid Umarov 2010.10.27 12:23  

Не подтверждается. Вот код второго варианта,

//+------------------------------------------------------------------+
//|                                             TestInvalidPrice.mq5 |
//|                        Copyright 2010, MetaQuotes Software Corp. |
//|                                              http://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2010, MetaQuotes Software Corp."
#property link      "http://www.mql5.com"
#property version   "1.00"
/*
#include <Trade\Trade.mqh>
#include <Trade\SymbolInfo.mqh>
#include <Trade\PositionInfo.mqh>
#include <Trade\AccountInfo.mqh>
*/

double Open[];
int Open_handle;
MqlTradeRequest Request;
MqlTradeResult Result;
//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
//---
   return(0);
  }
//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  {
//---
  }
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
  {
//---
   Request.price=SymbolInfoDouble(Symbol(),SYMBOL_BID);//<--------------Улыбаемся и машем
   Request.symbol=_Symbol;
   Request.tp=SymbolInfoDouble(Symbol(),SYMBOL_BID)+0.001;
   Request.sl=SymbolInfoDouble(Symbol(),SYMBOL_BID)-0.001;
   Request.volume=1;
   Request.action=TRADE_ACTION_DEAL;//<--------------------------------Cap was where
   Request.type=ORDER_TYPE_BUY;
   Request.type_filling=ORDER_FILLING_AON;
   OrderSend(Request,Result);
  }
//+------------------------------------------------------------------+


вот скриншот проверок



К какому серверу Вы подключены? Какой номер билда? Напишите в Сервисдеск, пожалуйста.


slipkorn
49
slipkorn 2010.10.27 12:23  

Тестирование 2го варианта после включения 4х вышеуказанных инклудов. Гланый вопрос: Что в них находится, что заставляет работать тестер.

П.С. Ни в одном из тестов график торговли небыл выведен, а график баданса всегда был неизменчив 

Rashid Umarov
Админ
6600
Rashid Umarov 2010.10.27 12:26  
slipkorn:

Тестирование 2го варианта после включения 4х вышеуказанных инклудов. Гланый вопрос: Что в них находится, что заставляет работать тестер.

П.С. Ни в одном из тестов график торговли небыл выведен, а график баданса всегда был неизменчив 

Этот вариант также был проверен изначально. И также не подтвердился.
slipkorn
49
slipkorn 2010.10.27 13:03  
Версия 5.0 Билд 346
/ /123
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий