النتائج 16 إلى 21 من 21
الموضوع: كود اغلاق الصفقات
- 06-12-2015, 10:07 PM #16
مستر اسامة في مشكلة في غلق الصفقات بيقفل الصفقات على خسارة , يعني في الصورة المرفقة انا محدد في الاعدادات يقفل على ربح 6 دولار وزي ما هتشوف في الصورة صفقات قفلها على ربح 6 دولار اوكي , وصفقة قفلها على خسارة 50 دولار . الصفقة الفردية بيقفلها كويس لكن لما بيزيد عدد الصفقات بيقفل على خسارة
- 07-12-2015, 03:18 PM #17
هذه الداله لإغلاق آخر صفقه مفتوحه
كود PHP:void CloseLastOrder()
{
for (int cnt=OrdersTotal()-1;cnt>=0;cnt--)
{
bool select=OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
int ticket=OrderTicket();
double lots=OrderLots();
int Otype=OrderType();
if (OrderMagicNumber() == MagicNumber && OrderSymbol()==Symbol())
{
if (Otype==OP_BUY)
{
bool close= OrderClose(ticket,lots,NormalizeDouble(Bid,Digits),3*P);
break;
}
if (Otype==OP_SELL)
{
bool close=OrderClose(ticket,lots,NormalizeDouble(Ask,Digits),3*P);
break;
}
}
}
}
- 07-12-2015, 10:30 PM #18
شكرا ليك هجرب الكود , بس يا مستر انت مردتش عليه في موضوع انه بيقفل اجمالي الصفقات على خسارة رغم ان اجمالي الصفقات كان محقق الهدف , يعني انا كنت حاطط الهدف 6 دولار وفعلا شوفت الصفقات حققت 6 دولار لكن لما قفلهم طلعت نتيجة الصفقات خسرانه 50 دولار , انا اتوقع ان مع كتر عدد الصفقات لما بيجي يقفلهم بياخدو ثانية او اكثر بيكون السعر اتغير و عشان كده بتكون النتيجة خسارة .
على العموم انا فكرت في حل للمشكلة دي و لقيت ان حلها هيكون اننا نقلل عدد الصفقات المفتوحه بدون خسائر او بخسائر قليله او بربح و ياريت حضرتك تدعمني في الفكرة دي لانها مهمه
انا هفترض ان الاكسبرت فتح 3 صفقات بيع و 2 صفقة شراء و ان السعر اعلى من الصفقات و لكن لسه محققش الهدف فصفقات البيع هتكون بأرباح و صفقات الشراء هتكون بخسارة و قبل تحقيق الهدف عكس الاتجاه و السعر نزل تحت الموفينج افريج , هنا صفقات الشراء هتبتدي ارباحها تقل تقل الى ان تصل للصفر ثم تدخل في الخسائر , المطلوب بقى هنا اننا نقفل صفقات الشراء عند الصفر قبل ما توصل للخسائر وهيفضل عندي هنا صفقتين البيع فقط , راحو وحققو الهدف كان بها , محققوش و رجع السعر عكس و طلع فوق الموفينج يبقى ناخد صفقة شراء بكمية مضاعفة لصفقات الشراء المفتوحه , ولو صفقات البيع كانت ربحت ونفس الحكاية عند وصولها للصفر يغلقها البرنامج ويفضل صفقة الشراء وهكذا , بكده ابقى قللت الصفقات جدا و اتجنب المشكلة انه يقفل الصفقات على خسائر عشان عددها كبير , وياريت لو تخليلي الرقم اللي اقفل عليه الصفقات متغير , يعني انا اكتب تقفل على صفر او خمسة مثلا
وشكرا ليك يا مستر على طولة بالك وربنا يجازيك خير
- 08-12-2015, 11:29 AM #19
يبدو يا مستر أن طلبي مش واضح
انا عاوز استخدم الدالة OrderProfit() مع الدالة OrderType()
- يعني مثلا انا عاوز اغلق صفقات الشراء اللي ارباحها اكبر من صفر او اي رقم ده لما هتجيلي اشارة ان السعر عكس عليها مثلا انه نزل تحت الموفينج افرج أو اي مؤشر اخر هستخدمه هيديني اشارة ان السعر هيهبط , هقوله اقفل طلبات الشراء اللي ربحها اكبر من صفر
- والعكس هقوله اغلق طلبات البيع اللي ربحها اكبر من صفر لما هتجيلي اشارة ان السعر هيرتفع
معلش انا بلح عليك لانها نقطة ضرورية لان كل ما بيكتر عدد الصفقات عقبال ما ما بيجي يقفلها بيقفلها على خسارة رغم ان الاجمالي بتاعها كان ارباح عشان كده انا عاوز اقفل الصفقات اول بأول لما تكون ربحانه و يجي اشارة ان السعر هيعكس عليها
- 09-12-2015, 01:36 AM #20
يا مستر انا لقيت الكود ده بس بيطلع تحذير return value of 'OrderSelect' should be checked
وبيقفل صفقة واحدة فقط مش كل الصفقات المحققة ارباح ممكن حضرتك تعدلهولي او تقولي علي كود اخريقوم بنفس المهمه
كود PHP:void CloseSELLprofit()
{
int ticket;
double profit= 6;
for (int i =1 ;i>0;i--)
{
for (int x = OrdersTotal()-1;x>0;x--)
{
OrderSelect(x,SELECT_BY_POS);
if (OrderProfit() >= profit) ticket = OrderTicket();
}
OrderSelect(ticket,SELECT_BY_TICKET);
if (OrderType() == OP_SELL)
OrderClose(OrderTicket(),OrderLots(),MarketInfo(OrderSymbol(),MODE_ASK),NULL);
}
}
- 30-12-2015, 02:22 PM #21
تحياتي لك مستر دولار انا حاولت كتير و بطرق كتير مع المضاعفات لكن للاسف جميعها بيكون طريقها المارجن كول , انا فكرت في فكرة و عاوز حضرتك تساعدني فيها , انا عاوز افتح 3 صفقات مع بعض بيع أو 3 صفقات مع بعض شراء بس يكون لكل واحدة فيهم تريلينج ستوب و تريلينج ستيب مختلف عن التانيين , هحاول اوضح لحضرتك الفكرة انا عاوز افتح 3 عمليات بيع مع بعض و يكون التريلينج استوب و التريلينج ستيب بيحركو الاستوب لوز كالتالي:
الصفقة الاولى : تريلينج ستوب 15 و تريلينج ستيب 5
الصفقة الثانية : تريلينج ستوب 20 و تريلينج ستيب 10
الصفقة الثالثة : تريلينج ستوب 30 و تريلينج ستيب 20
حاولت اني انسخ كود void MoveTrailingStop() و اعمل منه 1 و 2 يعني void MoveTrailingStop1() و void MoveTrailingStop2() , بس معرفتش استخدمهم ازاي
وشاكر لك تعبك معانا