رد:موضوع مخصص للأسئلة البرمجية
بسم الله الرحمن الرحيم
عاوز اكسبرت بسيط
يوضح التاريخ والسعر على اى من جوانب الشاشة
ولكن يكون بخط كبير بعض الشئ او اتحكم انا بحجم الخط
وعندى مشكلة بتواجهنى لما يكون على فريم 4 ساعات ومثلا في شهر 9 الماضى وبكون عاوز احول الى فريم 15 دقيقية بلاقى الشارت بدأ من اخر تاريخ يعنى 2013 فبضل بالماوس فترة طويلة لغاية لما اوصل الى الفترة اللى عاوز افحصها او اشوفها
لو فية حل للمشكلة دية اكون شاكر لكم
1 مرفق
رد:موضوع مخصص للأسئلة البرمجية
اقتباس:
المشاركة الأصلية كتبت بواسطة amd224
بسم الله الرحمن الرحيم
عاوز اكسبرت بسيط
يوضح التاريخ والسعر على اى من جوانب الشاشة
ولكن يكون بخط كبير بعض الشئ او اتحكم انا بحجم الخط
وعندى مشكلة بتواجهنى لما يكون على فريم 4 ساعات ومثلا في شهر 9 الماضى وبكون عاوز احول الى فريم 15 دقيقية بلاقى الشارت بدأ من اخر تاريخ يعنى 2013 فبضل بالماوس فترة طويلة لغاية لما اوصل الى الفترة اللى عاوز افحصها او اشوفها
لو فية حل للمشكلة دية اكون شاكر لكم
بالنسبه لطلبك الأول هذا المؤشر يضع السعر بخط كبير
https://forum.arabictrader.com/t9652...ml#post2302249
المشاركه رقم 78
بالنسبه للمشكله فعندما تقوم بتحويل الشارت من فريم 4 ساعات إلى الفريم الصغير تأكد من
تعطيل خاصية Auto Scroll
الملف المرفق 353526
1 مرفق
رد:موضوع مخصص للأسئلة البرمجية
اقتباس:
المشاركة الأصلية كتبت بواسطة MR.dollar
يوجد كود في الإكسبرت به عامل قسمه وأحيانا تكون قيمة المقام = 0 بالتالي يحدث هذا الخطأ عند العملية الحسابيه
يجب تعديل الكود لتجنب هذا الخطأ
لللاسف لم اتمكن من معرفة المشكل
مرفق الاكسبيرت للتصحيح
الاكسبيرت يعتمد على ايجاد نمزدج همر مرتد من نمودج ابتلاع شرائي ويقوم بالشراء بعدها
السءال الثاني
قرات لك في احد المواصيع حول اخفاء الاكسبيرت عن شركة الوساطة طريقة
باستعمال ملفات
dll
ارجوا منك بارك الله فيك شرح الطريقة
رد:موضوع مخصص للأسئلة البرمجية
اقتباس:
المشاركة الأصلية كتبت بواسطة توفيق
لللاسف لم اتمكن من معرفة المشكل
مرفق الاكسبيرت للتصحيح
الاكسبيرت يعتمد على ايجاد نمزدج همر مرتد من نمودج ابتلاع شرائي ويقوم بالشراء بعدها
السءال الثاني
قرات لك في احد المواصيع حول اخفاء الاكسبيرت عن شركة الوساطة طريقة
باستعمال ملفات
dll
ارجوا منك بارك الله فيك شرح الطريقة
الخطأ لديك في كود تحديد حجم اللوت
كود PHP:
bb=((High[1]-Low[1])+spread)*k;
قيمة k سوف تكون دائما صفر بالتالي عندما تقوم بإستدعاء المتغير bb في الداله
كود PHP:
double lots(int risk,double stoppips)
{
double aa=(bl*risk)/(double)100;
if(lottyp==0)
{
return (NormalizeDouble(((aa/stoppips)*10),2));
}
if(lottyp==1){
return (NormalizeDouble(((aa/stoppips)),2));
}
if(lottyp==2){
return (NormalizeDouble((aa/stoppips)/10,2));
}
}
فسيكون التقسيم 0 دائما
الآن لماذا قيمة k صفر
لأنك عندما قمت بوضع شرط عدد الفواصل العشرية للعمله
كود PHP:
if(Digits==5||Digits==3)Q=10;
else Q=1;
if(Digits<4)
{
point=0.01;
digits=2;
k=100;
}
else
{
point=0.0001;
digits=4;
k=10000;
}
قمت بوضعه في الداله dienit وليس init وهذا خطأ لأن الداله init هي التي تعمل عند بداية عمل الإكسبرت
رد:موضوع مخصص للأسئلة البرمجية
السلام عليكم ورحمة الله وبركاته
لو سمحتم اريد كود غلق جميع الصفقات بيع وشراء معا
عند وصول الربح الي انا محدد بالدولار في MinProfitInUSD
رد:موضوع مخصص للأسئلة البرمجية
اقتباس:
المشاركة الأصلية كتبت بواسطة zouhirtaha
السلام عليكم ورحمة الله وبركاته
لو سمحتم اريد كود غلق جميع الصفقات بيع وشراء معا
عند وصول الربح الي انا محدد بالدولار في MinProfitInUSD
وعليكم السلام ورحمة الله وبركاته
أولا سوف تقوم بعمل داله لإغلاق جميع الصفقات
كود PHP:
void CloseOrders()
{
for (int cnt = 0 ; cnt < OrdersTotal() ; cnt++)
{
OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
if (OrderMagicNumber() == MagicNumber && OrderSymbol()==Symbol())
{
if (OrderType()==OP_BUY)
{
OrderClose(OrderTicket(),OrderLots(),NormalizeDouble(Bid,Digits),3);
}
if (OrderType()==OP_SELL)
{
OrderClose(OrderTicket(),OrderLots(),NormalizeDouble(Ask,Digits),3);
}
}
}
}
وداله لحساب الربح الحالي للصفقات المفتوحه
كود PHP:
double OrdersProfit()
{
double Profit;
for (int cnt = 0 ; cnt < OrdersTotal() ; cnt++)
{
OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
if (OrderMagicNumber() == MagicNumber && OrderSymbol()==Symbol())
{
Profit+=OrderProfit();
}
}
return(Profit);
}
ثم سيكون شرط إغلاق الصفقات
كود PHP:
if(Usd_Profit>=OrdersProfit())
{
CloseOrders();
}
OrdersProfit هو المتغير الخارجي الذي ستحدد فيه الربح بالدولار المحدد
رد:موضوع مخصص للأسئلة البرمجية
اقتباس:
المشاركة الأصلية كتبت بواسطة MR.dollar
وعليكم السلام ورحمة الله وبركاته
أولا سوف تقوم بعمل داله لإغلاق جميع الصفقات
كود PHP:
void CloseOrders()
{
for (int cnt = 0 ; cnt < OrdersTotal() ; cnt++)
{
OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
if (OrderMagicNumber() == MagicNumber && OrderSymbol()==Symbol())
{
if (OrderType()==OP_BUY)
{
OrderClose(OrderTicket(),OrderLots(),NormalizeDouble(Bid,Digits),3);
}
if (OrderType()==OP_SELL)
{
OrderClose(OrderTicket(),OrderLots(),NormalizeDouble(Ask,Digits),3);
}
}
}
}
وداله لحساب الربح الحالي للصفقات المفتوحه
كود PHP:
double OrdersProfit()
{
double Profit;
for (int cnt = 0 ; cnt < OrdersTotal() ; cnt++)
{
OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
if (OrderMagicNumber() == MagicNumber && OrderSymbol()==Symbol())
{
Profit+=OrderProfit();
}
}
return(Profit);
}
ثم سيكون شرط إغلاق الصفقات
كود PHP:
if(Usd_Profit>=OrdersProfit())
{
CloseOrders();
}
OrdersProfit هو المتغير الخارجي الذي ستحدد فيه الربح بالدولار المحدد
اظن انك تقصد Usd_Profit هو المتغير الخارجي
رد:موضوع مخصص للأسئلة البرمجية
اقتباس:
المشاركة الأصلية كتبت بواسطة zouhirtaha
اظن انك تقصد Usd_Profit هو المتغير الخارجي
نعم صحيح :0016:
1 مرفق
رد:موضوع مخصص للأسئلة البرمجية
اقتباس:
المشاركة الأصلية كتبت بواسطة ساهر الفوركس
السلام عليكم
اخي اسامة عندي اسئلة
كيف اعرف نوع اخر اوردر في الهيستوري
كيف اعرف ربح او خسارة اخر اوردر في الهيستوري
كيف اعرف ان الامر المعلق تفعل واخذ الربح
بارك الله فيك اخي اسامة
وهل يوجد اكسبريت مفتوح فيه هذه التطبيقات وشكرا
وعليكم السلام ورحمة الله وبركاته
سوف تقوم بعمل دالة لبحث نوع آخر صفقة وآخر صفقة أغلقت على ربح أو خساره
مثال
كود PHP:
int LastOrderType()
{
for(int i=OrdersHistoryTotal()-1;i>=0;i--){
OrderSelect(i,SELECT_BY_POS,MODE_HISTORY);
int type=OrderType();
if(OrderSymbol()==Symbol()&&OrderMagicNumber()==MagicNumber)
return(type);
}
return(-1);
}
وهذه دالة لمعرفة آخر ربح أو خساره للصفقه
كود PHP:
double LastOrderProfit()
{
for(int i=OrdersHistoryTotal()-1;i>=0;i--){
OrderSelect(i,SELECT_BY_POS,MODE_HISTORY);
if(OrderSymbol()==Symbol()&&OrderMagicNumber()==MagicNumber)
return(OrderProfit());
}
return(0);
}
بالنسبه لمعرفة هل الأمر المعلق تفعل أم لا فتقوم بالبحث عن الصفقات المفتوحه وتتأكد هل الأمر المعلق بنفس الماجيك نمبر موجود أم لا إذا لم يكن موجود فهذا يعني أنه تفعل
مرفق إكسبرت به الدوال السابقه