Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Привет,
Кто-нибудь может сказать мне, что не так с этим кодом?
Он вообще не открывает ни одного ордера?
Я тестировал его в 2007.01.03.
Спасибо
extern string StrStartOrderTime = "20:00";
extern string StrEndOrderTime = "23:59";
extern double MyBidPrice = 1.3271;
int CountOrder = 0, BuyMagicNumber, SellMagicNumber;
extern double Lots = 1;
extern int StopLoss = 35;
extern int TakeProfit = 8;
extern bool FlagBuy = false;
int x, b, FindMagicSell, TicketSell, FindMagicBuy, TicketBuy;
//+------------------------------------------------------------------+
//| expert initialization function |
//+------------------------------------------------------------------+
int init()
{
//----
MyBidPrice = 1.3271;
//----
return(0);
}
//+------------------------------------------------------------------+
//| expert deinitialization function |
//+------------------------------------------------------------------+
int deinit()
{
//----
//----
return(0);
}
//+------------------------------------------------------------------+
//| expert start function |
//+------------------------------------------------------------------+
int start()
{
//----
int GetPosition, StartOrderTime, EndOrderTime, o;
GetPosition = StrToTime(StrGetPosition);
StartOrderTime = StrToTime(StrStartOrderTime);
EndOrderTime = StrToTime(StrEndOrderTime);
if (TimeCurrent() >= StartOrderTime && TimeCurrent() <= EndOrderTime)
{
FlagBuy = true;
//+------------
//| Posisi BUY
//+------------
if (FlagBuy == true)
{
if ((MyBidPrice == Bid) && (CountOrder < 6))
{
CountOrder++;
BuyMagicNumber = StrToInteger("1" + CountOrder + Day() + Month() + Year());
o = OrderSend(Symbol(),OP_BUY,Lots,Bid,3,Bid-StopLoss*Point,Bid+TakeProfit*Point,"Test",BuyMagicNumber,0,Green);
if (o < 1) MessageBox("ERROR!!");
if (CountOrder > 1) ModifyBuy();
if (CountOrder == 5) FlagBuy = false;
MyBidPrice = Bid - (2*Point);
}
ShowComment();
}
}
//----
return(0);
}
//+------------------------------------------------------------------+
void ModifyBuy()
{
for (x = 1; x < CountOrder; x++)
{
FindMagicBuy = StrToInteger("1" + x + Day() + Month() + Year());
for (b = 0; b < OrdersTotal(); b++)
{
OrderSelect(b,SELECT_BY_POS, MODE_TRADES);
if (OrderMagicNumber() == FindMagicBuy)
{
TicketBuy = OrderTicket();
OrderSelect(TicketBuy,SELECT_BY_TICKET);
OrderModify(OrderTicket(),OrderOpenPrice(),OrderStopLoss(),OrderTakeProfit()-(2*Point),0);
break;
}
}
}
}
void ShowComment()
{
Comment("DayOfWeek = ",DayOfWeek(),"\nFLAG BUY : ",FlagBuy,"\nCount Order ",CountOrder,"\nNext order = ",MyBidPrice,"\nBID = ",Bid,"\nTime : ",TimeToStr(TimeCurrent(),TIME_MINUTES));
}Не могу найти файл MQ4 для индикатора
Я надеюсь, что кто-нибудь сможет помочь мне с тем, что, как я изначально думал, будет довольно простым. Я хочу установить звуковое оповещение на индикатор, который на самом деле поставляется с Metatrader, чтобы при достижении определенного уровня он сообщал мне об этом. Индикатором является Force Index, однако я не могу найти файл MQ4 для него нигде в папке Experts/Indicators. Есть ли у кого-нибудь идея, где я могу найти этот файл?
Если я смогу найти файл mq4, буду ли я прав, если предположу, что смогу использовать код, приведенный Codersguru в начале этой темы, чтобы добавить к нему оповещение?
спасибо
ссылка Предыдущий пост
Мне удалось решить мою проблему из вышеуказанного сообщения.
Спасибо всем за интерес.
Привет,
Кто-нибудь может сказать мне, что не так с этим кодом?
Он вообще не открывает ни одного ордера?
Я тестировал его в 2007.01.03.
Спасибо
Вы не можете покупать по цене спроса.
@Michel :
Боже мой... какая я глупая...
спасибо...
Помогите с живой изгородью
Привет всем!
Я использовал конструктор советников на sufx.com для создания советника. У него есть два ограничения, от которых я пытаюсь избавиться:
1. открывает только 1 сделку за раз. Я могу заставить его открыть две сделки одновременно, но я не могу заставить его открыть ордер на покупку и ордер на продажу одновременно.
2. кажется, что ордера на продажу предпочтительнее ордеров на покупку. Это не было бы проблемой, если бы проблема номер 1 была решена.
Вот фрагмент кода, который, похоже, задерживает меня:
bool IsTrade = False;
for (int i = 0; i < Total; i ++) {
OrderSelect(i, SELECT_BY_POS, MODE_TRADES);
if (OrderType() <= OP_SELL && OrderSymbol() == Symbol()) {
IsTrade = True;
if (OrderType() == OP_BUY) {
//CloseЕсть предложения? Я хотел бы позволить ему открывать как можно больше сделок и иметь возможность открывать ордера на покупку и продажу одновременно, если индикаторы говорят об этом.
Спасибо за помощь,
Бенджиманг
Прибыль/убыток от валюты
Дэйв,
Я думаю, вам нужно быть более конкретным в том, что вы просите. И BTW, почему вы не отвечаете на сообщения PM? Где ты прячешься в эти дни????? lol
П в КС
Дэйв,
Я думаю, вам нужно быть более конкретным в том, что вы просите. И BTW, почему вы не отвечаете на сообщения PM? Где вы прячетесь в эти дни???? lol
П в КСЯ не получал никаких новых PM's???? К сожалению, в это время у меня случилась чрезвычайная ситуация в семье - с ней все в порядке. Я все еще мог бы использовать помощь по моему кодированию, особенно кодированию конвертов.
Дэйв
Как разместить прибыль валюты в правом верхнем углу графика?
Я хотел бы разместить прибыль/убыток валюты в правом верхнем углу графика валюты торговой платформы (EURUSD). Если прибыль по текущей сделке положительная, она будет отображаться зеленым цветом; если она равна 0.00, она будет отображаться белым цветом; если это убыток, он будет отображаться красным цветом.
Я знаю, что ObjectCreate - это то, что нужно, но помимо этого я не знаю, как захватить прибыль с торговой площадки? Может ли кто-нибудь помочь мне с этой утилитой? Я хочу включить это в свою программу.
Дэйв
<<<торговая статистика
используйте этот код:
// ***************************************************************************
int stats()
{
int i, vOrders;
// текущая прибыль CP
vOrders = OrdersTotal();
Profit = 0;
PipsProfit = 0;
for(i=vOrders-1;i>=0;i--)
{
if(OrderSelect(i, SELECT_BY_POS, MODE_TRADES))
{
if(OrderSymbol() == Symbol())
{
Profit += OrderProfit();
if (OrderType() == OP_BUY) PipsProfit += ((Bid - OrderOpenPrice())/Point);
else if (OrderType() == OP_SELL) PipsProfit += ((OrderOpenPrice() - Ask)/Point);
}
}
}
// потенциальный риск
// максимальные позиции
}
Profit & PipsProfit нужно будет объявить вне программы, а затем вывести на экран с помощью вашего любимого метода. Комментарии, если ничего другого нет.
Марк