النتائج 10,351 إلى 10,363 من 10363
الموضوع: موضوع مخصص للأسئلة البرمجية
- 21-02-2026, 12:09 AM #10351
تفضل اخى الكريم ،
هذه الوظيفه عند استدعائها او مساويتها بمتغير تعيد لك اقصى لوت قابل للتنفيذ على حسابك الآنكود PHP:
double GetMaxLotByEquity()
{
double free_margin = AccountFreeMargin();
double margin_per_lot = MarketInfo(Symbol(), MODE_MARGINREQUIRED);
if(margin_per_lot <= 0)
return(0);
double max_lots = free_margin / margin_per_lot;
double min_lot = MarketInfo(Symbol(), MODE_MINLOT);
double lot_step = MarketInfo(Symbol(), MODE_LOTSTEP);
double max_lot_allowed = MarketInfo(Symbol(), MODE_MAXLOT);
max_lots = MathFloor(max_lots / lot_step) * lot_step;
if(max_lots < min_lot)
return(0);
if(max_lots > max_lot_allowed)
max_lots = max_lot_allowed;
return(NormalizeDouble(max_lots,2));
}
آخر تعديل بواسطة Algo_Master ، 21-02-2026 الساعة 12:11 AM
- 21-02-2026, 09:47 PM #10352
بارك الله فيك اخي الكريم وجزاك الله خيرا على هذا المجهود الاكثر من رائع
- 22-02-2026, 02:40 AM #10353
- 12-03-2026, 09:02 PM #10354
السلام عليكم ورحمة الله وبركاته
بعد اذنك والشكر موصول للأستاذ المشرف جزاه الله خيرا
يمكن غلق زر التداول الآلي عن طريق مكتبة WinUser32
بحيث بعد تحقق نسبة الخسارة الكلية بالحساب سيتم اغلاق كل الصفقات الا ان يصبح بالحساب 0 صفقة ثم يحذف القيمة المحفوظة بالجلوبال ثم يغلق زر التداول الالي
بالنسبة للخسارة الكلية لا انصح بهذا الشكل لانه قد يوجد صفقات مغلقة ستؤثر على الحسبة ويلزمها شروط اخرى، لهذا الافضل تحديد رصيد بالاعدادات تختاره كما تشاء وعندما ينخفض الاكويتي عن هذا الرصيد يتم التنفيذ...
عموما
ببداية الكود خارج الدوال تضع ما يلي :
ثم الشروط ببداية الدالة الرئيسية OnTick :كود PHP:
#include <WinUser32.mqh>
#import "user32.dll"
int GetParent(int hWnd);
#import
كود PHP:
void OnTick()
{
if(!IsTesting())
{
if(OrdersTotal()==0&&GlobalVariableGet("CloseAll")==1)
{
GlobalVariableDel("CloseAll");
if(IsExpertEnabled())
SendMessageA((GetParent(GetParent(GetParent(WindowHandle(Symbol(),0))))),0x111,0x80FC,0);
return;
}
if((OrdersTotal()>0&&AccountEquity()<(AccountBalance()*(70/100)))||GlobalVariableGet("CloseAll")==1)
{
CloseAll();
GlobalVariableSet("CloseAll",1);
return;
}
}
//بقية الكود
}
ثم دالة اغلاق كل الصفقات بالمنصة
كود PHP:
void CloseAll()
{
bool select,close;
for(int i=OrdersTotal()-1; i>=0; i--)
{
select=OrderSelect(i,SELECT_BY_POS,MODE_TRADES);
if(OrdersTotal()>0)
{
if(OrderType()==OP_BUY)
close=OrderClose(OrderTicket(),OrderLots(),MarketInfo(OrderSymbol(),MODE_BID),NULL);
if(OrderType()==OP_SELL)
close=OrderClose(OrderTicket(),OrderLots(),MarketInfo(OrderSymbol(),MODE_ASK),NULL);
if(OrderType()>OP_SELL)
close=OrderDelete(OrderTicket());
}
}
}
تحياتيآخر تعديل بواسطة kira-h ، 12-03-2026 الساعة 09:18 PM
- 25-03-2026, 05:02 PM #10355
بارك الله فيك اخي الكريم وجزاك الله خيرا
- 29-03-2026, 09:04 PM #10356
السلام عليكم ورحمه الله وبركاته
كيف اجعل الاكسبيرت لا يدخل صفقات من نفس سعر اخر صفقة
- 30-03-2026, 10:19 AM #10357
الأمر بسيط اخى الكريم ،
يمكنك اضافه هذا الشرط لشروط فتح الصفقه ،
مثلا :
Bid !=xxx
او
Bid > xxx
و هكذا يمكنك اضافه كل الشروط الواجبه لفتح صفقه جديده فى اتجاه معين ،
و بالنسبه لمعرفه سعر فتح آخر صفقه فيمكنك أخذه بعد الفتح و تخزينه فى متغير تمهيدا لإستدعاؤه فى داله شروط فتح الصفقه الجديده .آخر تعديل بواسطة Algo_Master ، 30-03-2026 الساعة 10:22 AM
- 30-03-2026, 11:10 PM #10358
بارك الله فيك اخي الكريم وجزاك الله خيرا
- 31-03-2026, 10:47 AM #10359
- 24-05-2026, 05:03 PM #10360
السلام عليكم ورحمة الله وبركاته
كيف اكتب هذا الكود بلغة MQ5
كود PHP:if(DayOfWeek()== 5 ) return;
- 25-05-2026, 12:53 AM #10361
- 26-05-2026, 07:16 PM #10362
بارك الله فيك اخي الكريم وجزاك الله خيرا
وكل عام وانتم بخير
- 28-05-2026, 06:55 AM #10363
المواضيع المتشابهه
-
موضوع مخصص للاكسبيرتات اللتي يستخدمها الاعضاء على الحقيقي,,عندك اكسبيرت ممتاز ضعه هنا
By محمد معمو in forum برمجة المؤشرات واكسبرتات التداول - Experts Advisor EAمشاركات: 11آخر مشاركة: 15-12-2023, 02:03 PM -
عااااااااااااجل ( موضوع مخصص للفرص الفورية)!!!
By عاشق الذبذبـة in forum توقعات وتوصيات سوق العملاتمشاركات: 280آخر مشاركة: 27-08-2009, 10:30 PM
الأكثر زيارة

رد مع اقتباس