النتائج 7,921 إلى 7,935 من 10335
الموضوع: موضوع مخصص للأسئلة البرمجية
- 19-12-2016, 06:09 PM #7921
- 20-12-2016, 01:00 AM #7922
مساعدة من فضلكم
السلام عليكم يا استاذنا الكريم
من فضلك هل يمكنك مسعدتي لاتمام الاكسبرت الذين انا فيه اريد ان اضيف له هذه النقاط:
1-ان يقوم بغلق الصفقات الرابحة من الساعة 20.00 يوم الجمعةويعود للعمل يوم الاثنين.
2-ان تكون الصفقات المفتوحة لا تفوق 2صفقة .
3-ان اقوم بمعادلة لكي طعطيني سعر الاستوب لوز للصفقة المفتوحة.
واشكرك استاذنا الغالي على ردودك
- 20-12-2016, 06:09 PM #7923
يمكنك إستخدام هذه الداله لتحديد حجم اللوت
كود PHP:double LotManage()
{
double lot = MathCeil(AccountFreeMargin() * Risk / 1000) / 100;
if(lot<MarketInfo(Symbol(),MODE_MINLOT))lot=MarketInfo(Symbol(),MODE_MINLOT);
if(lot>MarketInfo(Symbol(),MODE_MAXLOT))lot=MarketInfo(Symbol(),MODE_MAXLOT);
return (NormalizeDouble(lot,Lot_Decimal));
}
- 20-12-2016, 06:51 PM #7924
مستر دولار هل يوجد شئ او كتاب يعلم البرمجة قد اتعلم واساعدك فى هذا القسم
- 20-12-2016, 07:55 PM #7925
السلام عليكم يا استاذنا الكريم
من فضلك هل يمكنك مسعدتي لاتمام الاكسبرت الذين انا فيه اريد ان اضيف له هذه النقاط:
1-ان يقوم بغلق الصفقات الرابحة من الساعة 20.00 يوم الجمعةويعود للعمل يوم الاثنين.
2-ان تكون الصفقات المفتوحة لا تفوق 2صفقة .
3-ان اقوم بمعادلة لكي طعطيني سعر الاستوب لوز للصفقة المفتوحة.
واشكرك استاذنا الغالي على ردودك
- 20-12-2016, 11:32 PM #7926
- 20-12-2016, 11:34 PM #7927
- 21-12-2016, 03:50 AM #7928
بارك الله فيك استاذنا العزيز
نعم هذا ما اريده وللتوضيح اكثر
الاكيوتى 1000 ووضعت التراجع 100 مثلا
فى البدايه يحسب الاكيوتى 1000
اذا قل عن ذلك يستمر بحفظ القيمه كما هى 1000
واذا زاد ووصل مثلا الى 1250
اريده اذا تراجع الى 1150 وهى 1250 اعلى قيمه - 100 التراجع يغلق كل الصفقات
او بطريقه اخرى المخزن 1000 والتراجع 100
اذا صعد ل 1250 ثم هبط الى 1100 يغلق كل الصفقات (ايهما يصح فى الطريقتين)
بنفس فكرة التراجع فى الربح الذى قمت حضرتك بعمله فى داله سابقه
والتى قمت بالاستعانه بفكرتها فى هذه الداله
وهذه هى الداله الاصليه لك
كود PHP:void HiddenTrailingBalancePercent()
{
double ProfitPercent=AccountProfit();
if(ProfitPercent>=StartTrailingPercent&&(GlobalVariableGet("TS Percent")<ProfitPercent-StartTrailingPercent||GlobalVariableGet("TS Percent")==0))
{
GlobalVariableSet("TS Percent",ProfitPercent-StartTrailingPercent);
}
if(ProfitPercent<=GlobalVariableGet("TS Percent")&&GlobalVariableGet("TS Percent")!=0)
{
for(int i=OrdersTotal()-1;i>=0;i--)
{
bool select=OrderSelect(i,SELECT_BY_POS,MODE_TRADES);
if(OrderSymbol()==Symbol())
{
if(OrderType()==OP_BUY)
{
bool closeB=OrderClose(OrderTicket(),OrderLots(),Bid,3);
}
if(OrderType()==OP_SELL)
{
bool closeS=OrderClose(OrderTicket(),OrderLots(),Ask,3);
}
}
}
GlobalVariableDel("TS Percent");
}
}
آخر تعديل بواسطة abo_samar ، 21-12-2016 الساعة 03:53 AM
- 21-12-2016, 09:36 AM #7929
السلام عليكم استاذى الكريم
انا محتاج دالة التريلينج استوب والبريك ايفن
تعمل مع كل صفقة لوحده
بمعنى
الاكسبيرت فتح شراء وبعد مسافة فتح شراء ثانى وبعد مسافة فتح صفقة
انا عايز لكل صفقة منهم خط التريلينج استوب مستقل بكل صفقة فقط وليس يعمل على مجموع الصفقات
ونفس الشئ فى البريك ايفن
لكل صفقة عند الوصول على الرقم الموجود فى خانة البريك ايفن يتم وضع الاستوب لهذه الصفقة فقط
هذا هو المطلوب
ولك الشكر والعرفان
تحياتى لك
- 21-12-2016, 04:14 PM #7930
السلام عليكم
اريد دالة التريلنج ستوب لتظهر على الشارت على هيئة خطوط
- 21-12-2016, 05:26 PM #7931
- 21-12-2016, 06:16 PM #7932
وعليكم السلام ورحمة الله وبركاته
بنفس دالة التريلينج ستوب لكن سوف تستخدم الداله ObjectCreate لرسم خط مكان النقطة الأستوب الجديده
مثال
كود PHP:void MoveTrailingStop()
{
for(int cnt=0;cnt<OrdersTotal();cnt++)
{
bool select=OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
if(OrderType()<=OP_SELL&&OrderSymbol()==Symbol()&&OrderMagicNumber()==MagicNumber)
{
if(OrderType()==OP_BUY)
{
if(TrailingStop>0&&NormalizeDouble(Ask,Digits)>NormalizeDouble(OrderOpenPrice()+TrailingStop*point,Digits))
{
if((NormalizeDouble(OrderStopLoss(),Digits)<NormalizeDouble(Bid-TrailingStop*point,Digits))||(OrderStopLoss()==0))
{
bool modify=OrderModify(OrderTicket(),OrderOpenPrice(),NormalizeDouble(Bid-TrailingStop*point,Digits),OrderTakeProfit(),0,Blue);
CreateLine("TS"+OrderTicket(),NormalizeDouble(Bid-TrailingStop*point,Digits));
}
}
}
else
{
if(TrailingStop>0&&NormalizeDouble(Bid,Digits)<NormalizeDouble(OrderOpenPrice()-TrailingStop*point,Digits))
{
if((NormalizeDouble(OrderStopLoss(),Digits)>(NormalizeDouble(Ask+TrailingStop*point,Digits)))||(OrderStopLoss()==0))
{
modify=OrderModify(OrderTicket(),OrderOpenPrice(),NormalizeDouble(Ask+TrailingStop*point,Digits),OrderTakeProfit(),0,Red);
CreateLine("TS"+OrderTicket(),NormalizeDouble(Ask+TrailingStop*point,Digits));
}
}
}
}
}
}
void CreateLine(string name,double price)
{
if(ObjectFind(name)==-1)
{
ObjectCreate(name,OBJ_HLINE,0,0,price);
ObjectSet(name,OBJPROP_COLOR,Red);
}
else if(ObjectGet(name,OBJPROP_PRICE1)!=price)
{
ObjectSet(name,OBJPROP_PRICE1,price);
}
}
- 21-12-2016, 06:17 PM #7933
هذه الداله ستقوم بعمل التريلينج ستوب والبريك إيفن لكل صفقه على حده
كود PHP:void MoveTrailingStop()
{
for(int cnt=0;cnt<OrdersTotal();cnt++)
{
bool select=OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
if(OrderType()<=OP_SELL&&OrderSymbol()==Symbol()&&OrderMagicNumber()==MagicNumber)
{
if(OrderType()==OP_BUY)
{
if(TrailingStop>0&&NormalizeDouble(Ask,Digits)>NormalizeDouble(OrderOpenPrice()+TrailingStop*point,Digits))
{
if((NormalizeDouble(OrderStopLoss(),Digits)<NormalizeDouble(Bid-TrailingStop*point,Digits))||(OrderStopLoss()==0))
{
bool modify=OrderModify(OrderTicket(),OrderOpenPrice(),NormalizeDouble(Bid-TrailingStop*point,Digits),OrderTakeProfit(),0,Blue);
}
}
}
else
{
if(TrailingStop>0&&NormalizeDouble(Bid,Digits)<NormalizeDouble(OrderOpenPrice()-TrailingStop*point,Digits))
{
if((NormalizeDouble(OrderStopLoss(),Digits)>(NormalizeDouble(Ask+TrailingStop*point,Digits)))||(OrderStopLoss()==0))
{
modify=OrderModify(OrderTicket(),OrderOpenPrice(),NormalizeDouble(Ask+TrailingStop*point,Digits),OrderTakeProfit(),0,Red);
}
}
}
}
}
}
void MoveBreakEven()
{
for(int cnt=0;cnt<OrdersTotal();cnt++)
{
bool select=OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
if(OrderType()<=OP_SELL&&OrderSymbol()==Symbol()&&OrderMagicNumber()==MagicNumber)
{
if(OrderType()==OP_BUY)
{
if(BreakEven>0)
{
if(NormalizeDouble((Bid-OrderOpenPrice()),Digits)>BreakEven*point)
{
if(OrderStopLoss()==0||OrderStopLoss()<OrderOpenPrice()+BreakEvenPips*point)
{
bool modify= OrderModify(OrderTicket(),OrderOpenPrice(),NormalizeDouble(OrderOpenPrice()+BreakEvenPips*point,Digits),OrderTakeProfit(),0,Blue);
}
}
}
}
else
{
if(BreakEven>0)
{
if(NormalizeDouble((OrderOpenPrice()-Ask),Digits)>BreakEven*point)
{
if(OrderStopLoss()==0||OrderStopLoss()>OrderOpenPrice()-BreakEvenPips*point)
{
modify= OrderModify(OrderTicket(),OrderOpenPrice(),NormalizeDouble(OrderOpenPrice()-BreakEvenPips*point,Digits),OrderTakeProfit(),0,Red);
}
}
}
}
}
}
}
- 21-12-2016, 09:11 PM #7934
- 22-12-2016, 02:31 PM #7935
المواضيع المتشابهه
-
موضوع مخصص للاكسبيرتات اللتي يستخدمها الاعضاء على الحقيقي,,عندك اكسبيرت ممتاز ضعه هنا
By محمد معمو in forum برمجة المؤشرات واكسبرتات التداول - Experts Advisor EAمشاركات: 11آخر مشاركة: 15-12-2023, 02:03 PM -
عااااااااااااجل ( موضوع مخصص للفرص الفورية)!!!
By عاشق الذبذبـة in forum توقعات وتوصيات سوق العملاتمشاركات: 280آخر مشاركة: 27-08-2009, 10:30 PM