مشاهدة النسخة كاملة : برمجة اكسبيرت للمؤشر SAR
sadik
17-04-2013, 05:59 PM
يعطيكون العافية شباب وخاصتا أخي المبرمج القدير مصطفى
أنا عم حاول أبرمج اكسبيرت للمؤشر باربوليك سار parabolic SAR
بحيث يفتح صفقة شراء عندما يتغير اتجاه المؤشر من فوق الشمعة السابقة الى تحت الشمعة الحالية
وبالعكس يفتح صفقة بيع عندما يتغير اتجاه المؤشر من تحت الشمعة السابقة الى فوق الشمعة الحالية
وهدفي هوو نقاط قليلة بحيث أحصل على ربح سريع
المشكلة أن الاكسبيرت يتأخر في فتح الصفقة كما هو موضح بالرسوم
http://www.fx-arabia.com/vb/uploaded/14484_11366209913.png
لاحظ أخي الغالي أنه فتح صفقة بيع في الشمعة قبل الأخيرة ولكن متأخر كثيرا
وفتح صفقة شراء بالشمعة الأخيرة ولكن متأخر أيضا
والكود الذي استخدمته لهذه العملية هو التالي:
double sar1=iSAR(NULL,0,Step,Maximum,1);
double close1=iClose(NULL,0,1);
double sar0=iSAR(NULL,0,Step,Maximum,0);
double open0=iOpen(NULL,0,0);
if((sar1<close1)&& (sar0>close1)&&(OrdersTotal()<=0)&&(alerttime!=Time[0]))
{
int opensell=OrderSend(Symbol(),OP_SELL,lot,Bid,slippa ge,NormalizeDouble(Bid+StopLoss*Point,Digits),Norm alizeDouble(Bid-TakeProfit*Point,Digits),"MY PROFIT trader sell order",0,0,Red);
alerttime=Time[0];
return(0);
}
if((sar0<close1)&&(sar1>close1)&&(OrdersTotal()<=0)&&(alerttime!=Time[0]))
{
int openbuy=OrderSend(Symbol(),OP_BUY,lot,Ask,slippage ,NormalizeDouble(Ask-StopLoss*Point,Digits),NormalizeDouble(Ask+TakePro fit*Point,Digits),"MY1 trader buy order",0,0,Green);
alerttime=Time[0];
return(0);
}
أرجو المساعدة
وفي حال كان هناك حل للمشكلة حينها يكون من المجدي فتح ورشة لهذا الموضوع
وشكرا جزيلا
MOVING_AVERAGE
17-04-2013, 11:28 PM
يعطيكون العافية شباب وخاصتا أخي المبرمج القدير مصطفى
أنا عم حاول أبرمج اكسبيرت للمؤشر باربوليك سار parabolic SAR
بحيث يفتح صفقة شراء عندما يتغير اتجاه المؤشر من فوق الشمعة السابقة الى تحت الشمعة الحالية
وبالعكس يفتح صفقة بيع عندما يتغير اتجاه المؤشر من تحت الشمعة السابقة الى فوق الشمعة الحالية
وهدفي هوو نقاط قليلة بحيث أحصل على ربح سريع
المشكلة أن الاكسبيرت يتأخر في فتح الصفقة كما هو موضح بالرسوم
http://www.fx-arabia.com/vb/uploaded/14484_11366209913.png
لاحظ أخي الغالي أنه فتح صفقة بيع في الشمعة قبل الأخيرة ولكن متأخر كثيرا
وفتح صفقة شراء بالشمعة الأخيرة ولكن متأخر أيضا
والكود الذي استخدمته لهذه العملية هو التالي:
double sar1=iSAR(NULL,0,Step,Maximum,1);
double close1=iClose(NULL,0,1);
double sar0=iSAR(NULL,0,Step,Maximum,0);
double open0=iOpen(NULL,0,0);
if((sar1<close1)&& (sar0>close1)&&(OrdersTotal()<=0)&&(alerttime!=Time[0]))
{
int opensell=OrderSend(Symbol(),OP_SELL,lot,Bid,slippa ge,NormalizeDouble(Bid+StopLoss*Point,Digits),Norm alizeDouble(Bid-TakeProfit*Point,Digits),"MY PROFIT trader sell order",0,0,Red);
alerttime=Time[0];
return(0);
}
if((sar0<close1)&&(sar1>close1)&&(OrdersTotal()<=0)&&(alerttime!=Time[0]))
{
int openbuy=OrderSend(Symbol(),OP_BUY,lot,Ask,slippage ,NormalizeDouble(Ask-StopLoss*Point,Digits),NormalizeDouble(Ask+TakePro fit*Point,Digits),"MY1 trader buy order",0,0,Green);
alerttime=Time[0];
return(0);
}أرجو المساعدة
وفي حال كان هناك حل للمشكلة حينها يكون من المجدي فتح ورشة لهذا الموضوع
وشكرا جزيلا
اخي هل تاجرت اعتمادا علي نقاط sar وحدها ؟؟؟؟
ام لم تتاجر من قبل عليها
sadik
18-04-2013, 10:39 AM
التجارة على نقاط ال SAR وحدها
أي لحظة حساب قيمة الSAR للشمعة الجديدة
MOVING_AVERAGE
18-04-2013, 01:02 PM
التجارة على نقاط ال SAR وحدها
أي لحظة حساب قيمة الSAR للشمعة الجديدة
اقصد لحضة ضهور النقطة المعاكسة
مثلا لو انا النقاط ضاهرة من اعلي
http://www.fx-arabia.com/vb/uploaded/8190_01366279175.jpg
فنقاط البرابوليك سار تعتبر كانها مقاومات او دعوم
اذا اخترقت مقاومة تصبح دعم واذا اخترق دعم يصبح مقاومات
نفس الام بالنسبة للضهور
تكون في الاعلي لما تتجاوزها الشمعة تصبح في الاسفل والعكس
يعني في اول نقطة برابوليك صار هي لم تضهر مباشرتا في المكان الذي رسمت عليه
sadik
18-04-2013, 03:38 PM
أخي الغالي مصطفى كلامك صحيح مية بالمية
بس اذا بتراقب التشارت وبتنتظر لحظة القلبان بتعت الSAR بتلاحظ انو بيفتح الصفقة برضو على مسافة كبيرة من لحظة حساب قيمة SAR
ولاحظت انو المسافة دي متنسبة مع طول الشمعة يعني لو الشمعة كبيرة حتكون المسافة أكبر
طبعا وفي حالات يقلب الSAR من الأول ومايغيرش اتجاهه وهي الحاله الغالبة
انت جربت الكود؟
وهل هناك خطأ برمجي مثلا أو منطقي؟
وشكرا لتعاونك أخي الغالي
MOVING_AVERAGE
19-04-2013, 11:09 AM
لاحظ اخي
ماهدف هذه المقارنة
sar0>close1
sadik
19-04-2013, 02:45 PM
لقد كانت sar0>open0
وبما أنا close1 تساوي عادتا open0
فوضعتها محاولتا مني تسريع اتخاذ القرار البرمجي
ولكن الاثنتين يعطو نفس النتيجة
MOVING_AVERAGE
20-04-2013, 10:59 AM
ارفق الاكسبريت لكي افحصه
sadik
20-04-2013, 01:16 PM
هذا هوو الاكسبيرت أخي مصطفى
http://www.fx-arabia.com/vb/uploaded/14484_11366452817.mq4
وعند التجريب لاحظ انه لولا مشكلة التأخير هذه لكان رابحا بشكل أكيد
وشكرا شكرا على وقت وجهدك أخي الغالي
sadik
24-04-2013, 04:33 PM
أتمنى ماتكون نسيتني أخي الغالي
:D
sadik
28-04-2013, 12:07 PM
يعطيك العافية أخي مصطفى
ياريت تخبرني اذا صار معك شي
abdullah90
28-04-2013, 02:46 PM
انا بالانتظار :) :p
عبد الجليل
01-11-2013, 02:28 AM
يعطيكون العافية شباب وخاصتا أخي المبرمج القدير مصطفى
أنا عم حاول أبرمج اكسبيرت للمؤشر باربوليك سار parabolic SAR
بحيث يفتح صفقة شراء عندما يتغير اتجاه المؤشر من فوق الشمعة السابقة الى تحت الشمعة الحالية
وبالعكس يفتح صفقة بيع عندما يتغير اتجاه المؤشر من تحت الشمعة السابقة الى فوق الشمعة الحالية
وهدفي هوو نقاط قليلة بحيث أحصل على ربح سريع
المشكلة أن الاكسبيرت يتأخر في فتح الصفقة كما هو موضح بالرسوم
http://www.fx-arabia.com/vb/uploaded/14484_11366209913.png
لاحظ أخي الغالي أنه فتح صفقة بيع في الشمعة قبل الأخيرة ولكن متأخر كثيرا
وفتح صفقة شراء بالشمعة الأخيرة ولكن متأخر أيضا
والكود الذي استخدمته لهذه العملية هو التالي:
double sar1=iSAR(NULL,0,Step,Maximum,1);
double close1=iClose(NULL,0,1);
double sar0=iSAR(NULL,0,Step,Maximum,0);
double open0=iOpen(NULL,0,0);
if((sar1<close1)&& (sar0>close1)&&(OrdersTotal()<=0)&&(alerttime!=Time[0]))
{
int opensell=OrderSend(Symbol(),OP_SELL,lot,Bid,slippa ge,NormalizeDouble(Bid+StopLoss*Point,Digits),Norm alizeDouble(Bid-TakeProfit*Point,Digits),"MY PROFIT trader sell order",0,0,Red);
alerttime=Time[0];
return(0);
}
if((sar0<close1)&&(sar1>close1)&&(OrdersTotal()<=0)&&(alerttime!=Time[0]))
{
int openbuy=OrderSend(Symbol(),OP_BUY,lot,Ask,slippage ,NormalizeDouble(Ask-StopLoss*Point,Digits),NormalizeDouble(Ask+TakePro fit*Point,Digits),"MY1 trader buy order",0,0,Green);
alerttime=Time[0];
return(0);
}
أرجو المساعدة
وفي حال كان هناك حل للمشكلة حينها يكون من المجدي فتح ورشة لهذا الموضوع
وشكرا جزيلا
السلام عليكم اخي
انا وقعت معي نفس المشكلة
ولا ادري ما الحل
لولا تاخر فتح الصفقات لكان اكسبيرت ناجح جدا
vBulletin® v3.8.8