مشاهدة نتائج الإستطلاع: طلب مساعدة في برمجة اكسبيرت بسيط
- المصوتون
- 0. أنت لم تصوت في هذا الإستطلاع
-
1
0 0% -
2
0 0%
إستطلاع متعدد الإختيارات.
النتائج 1 إلى 2 من 2
الموضوع: طلب مساعدة في صنع اكسبيرت بسيط
- 17-12-2021, 11:00 AM #1
طلب مساعدة في صنع اكسبيرت بسيط
السلام عليكم ارجو مساعدتي لعمل اكسبيرت بسيط جداً فكرته ان يقوم بفتح صفقة بيع او شراء واحدة حسب اختياري باللوت الذي احدده (عندما لا تكون هناك صفقات مفتوحة داخل المنصة فقط ) مع الشكر والتقدير
- 05-01-2022, 02:59 AM #2
تفضل
كود PHP://+------------------------------------------------------------------+
//| test.mq4 |
//| Copyright 2021, MetaQuotes Software Corp. |
//| https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2021, MetaQuotes Software Corp."
#property link "https://www.mql5.com"
#property version "1.00"
#property strict
extern int order = 0;// 0 For Buy && 1 For Sell
extern double Lots = 0.01;
//+------------------------------------------------------------------+
//| Expert initialization function |
//+------------------------------------------------------------------+
int OnInit()
{
//---
//---
return(INIT_SUCCEEDED);
}
//+------------------------------------------------------------------+
//| Expert deinitialization function |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
{
//---
}
//+------------------------------------------------------------------+
//| Expert tick function |
//+------------------------------------------------------------------+
void OnTick()
{
//---
if(OpenOrdersThisPairBuy()==0 && OpenOrdersThisPairSell()==0){
int Ticket = OrderSend(Symbol(),order,Lots, OrderOpenPrice(),5,0,0,NULL,0,0,clrNONE);
}
}
//+------------------------------------------------------------------+
int OpenOrdersThisPairBuy()
{
int total=0;
for(int i=OrdersTotal()-1; i>=0; i--)
{
if(!OrderSelect(i,SELECT_BY_POS,MODE_TRADES))Print("error Selecting order ",GetLastError());
if(OrderType()==OP_BUY && OrderSymbol()==Symbol())
total++;
}
return (total);
}
//+-------------------------------------------------------------------+
int OpenOrdersThisPairSell()
{
int total=0;
for(int i=OrdersTotal()-1; i>=0; i--)
{
if(!OrderSelect(i,SELECT_BY_POS,MODE_TRADES))Print("error Selecting order ",GetLastError());
if(OrderType()==OP_SELL && OrderSymbol()==Symbol())
total++;
}
return (total);
}
//+-------------------------------------------------------------------+