Вопросы от начинающих MQL5 MT5 MetaTrader 5 - страница 462
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Или такая конструкция не поможет, если нет тика на данном инструменте?
#property strict
extern bool USE_Info=true;
static datetime TimeN=0;
//+------------------------------------------------------------------+
//| Expert tick function |
//+------------------------------------------------------------------+
int start()
{
datetime TimeC=iTime("GBPUSD",5,0);
if(TimeN==0)TimeN=TimeC;
if(TimeN==TimeC) return(0);
TimeN=TimeC;
return(INIT_SUCCEEDED);
}
Помогите сообразить.
Ситуация такая - например нужно открыть позицию по паре EURUSD со стопом 30 пунктов и тейкпрофитом 30 пунктов, перед открытием нужно определить объем лота так чтобы при убыточной сделке был убыток в 100 USD. Как это можно посчитать средствами MQL5?
SL=30;
Lot=Формула расчета
Заранее благодарен.
Помогите сообразить.
Ситуация такая - например нужно открыть позицию по паре EURUSD со стопом 30 пунктов и тейкпрофитом 30 пунктов, перед открытием нужно определить объем лота так чтобы при убыточной сделке был убыток в 100 USD. Как это можно посчитать средствами MQL5?
SL=30;
Lot=Формула расчета
Заранее благодарен.
Для четвёрки можно так посчитать:
Лот=Деньги / (Стоплос_в_пунктах*MarketInfo(Symbol(),MODE_TICKVALUE))
Для четвёрки можно так посчитать:
Лот=Деньги / (Стоплос_в_пунктах*MarketInfo(Symbol(),MODE_TICKVALUE))
Спасибо, но мне не помогло.
Смотрите не MarketInfo(), а SymbolInfoDouble()
И что значит "не помогло"? Я ж не рыбу давал, а удочку.
Смотрите не MarketInfo(), а SymbolInfoDouble()
И что значит "не помогло"? Я ж не рыбу давал, а удочку.
Я еще слишком молод для использования удочки)
Вот написал скрипт по приведенной формуле выше
void OnStart()
{
//---
double Test=100/(300*_Point*SymbolInfoDouble(_Symbol,SYMBOL_TRADE_TICK_VALUE));
Alert(Test);
Выдает 33333.33, может блесна не та?
Я еще слишком молод для использования удочки)
Вот написал скрипт по приведенной формуле выше
void OnStart()
{
//---
double Test=100/(300*_Point*SymbolInfoDouble(_Symbol,SYMBOL_TRADE_TICK_VALUE));
Alert(Test);
Выдает 33333.33, может блесна не та?
Деньги / (Стоплос_в_пунктах*MarketInfo(Symbol(),MODE_TICKVALUE))
А вы его в цене считаете
Я еще слишком молод для использования удочки)
Вот написал скрипт по приведенной формуле выше
void OnStart()
{
//---
double Test=100/(300*_Point*SymbolInfoDouble(_Symbol,SYMBOL_TRADE_TICK_VALUE));
Alert(Test);
Выдает 33333.33, может блесна не та?
Когда-то я писал такую формулу
Lot = AccountFreeMargin()*Risk/100*_Point/(StopLoss*MarketInfo(Symbol(), MODE_TICKVALUE))
AccountFreeMargin()*Risk/100 --- это твои $100
StopLoss --- разница цен открытия ордера и СЛ (не в пунктах)
Соответственно MarketInfo() надо заменить на SymbolInfoDouble()
Я еще слишком молод для использования удочки)
Вот написал скрипт по приведенной формуле выше
void OnStart()
{
//---
double Test=100/(300*_Point*SymbolInfoDouble(_Symbol,SYMBOL_TRADE_TICK_VALUE));
Alert(Test);
Выдает 33333.33, может блесна не та?
Смотрите что у вас, если по-русски и при _Point, равном 0.00001:
Чтобы заработать 100 долларов при тейке в 0.003 пункта (300*0.00001), лот должен быть 33333.33. Так что блесна точно не та ;)
Деньги / (Стоплос_в_пунктах*MarketInfo(Symbol(),MODE_TICKVALUE))
А вы его в цене считаете