النتائج 3,496 إلى 3,510 من 10335
الموضوع: موضوع مخصص للأسئلة البرمجية
- 19-03-2013, 10:49 PM #3496
رد:موضوع مخصص للأسئلة البرمجية
تفضل هذه الدالة ستحسب بشكل صحيح قمت بتجربتها
كود PHP:int Real_Symb()
{
static int N;
string S[1];
for( int cnt=0; cnt<OrdersTotal(); cnt++)
{
OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
string symbol=OrderSymbol();
if(OrderType()==OP_BUY || OrderType()==OP_SELL)
{
bool SymbCount=false;
for (int i=0; i<ArraySize(S); i++)
{
if( S[i]==symbol )
{
SymbCount=true;
break;
}
}
if(SymbCount==false)
{
S[N]=OrderSymbol();
ArrayResize(S,ArraySize(S)+1);
N++;
}
}
}
return(N);
}
كود PHP:StringGetChar
كود PHP:int SymbolsCharCode;
for(int j=0;j<StringLen(Symbol());j++)
{
SymbolsCharCode+=StringGetChar(Symbol(),j);
}
طبعا ستقوم بتعريف المتغير SymbolsCharCode كمصفوفه تضع بها جميع اسماء العملات
وستستخدم الحلقه for للبحث عن الصفقات المفتوحه والمقارنه بينها
الأمر معقد قليلا لكن قم بعمل محاوله
- 19-03-2013, 11:13 PM #3497
رد:موضوع مخصص للأسئلة البرمجية
تم التعديل ولكن يظهر هذا الخطا
'CloseBuyOrders' - variable not defined
'CloseSellOrders' - variable not defined
كيف اقوم بتعريف هذين المتغيران
مع اني واضع هذا التعريفات
extern bool CloseBuy=true;
extern bool CloseSell=true;
extern int CheckBarsNumber =1;
شكري وامتناني
- 20-03-2013, 01:11 AM #3498
- 20-03-2013, 02:31 AM #3499
الاخ/ MR.DOLLAR .. سؤال بسيط ان تكرمتم .. ؟
السلام عليكم روحمة الله وبركاتة ..
انا استخدم برنامج forex generator v4.5 .. واريد ان اضع شرط ما .. وهو ..
" حدد اعلي هاي بين آخر 16 شمعة من الحالية " او "حدد ادنى لوو بين آخر 16 شمعة من الحالية" .. بس كدة
ان تكرمتم جزاكم الله خيرا .. اريد هذا الشرط في ملف .ea4 حتى يتثني الية معرفة الكيفية واضافته في forex generator ضمن البوك الحالي للاكسبيرت الخاص ..
انا اعرف اني استطيع ان استخدم الكود التالي
كود PHP:High[iHighest (NULL,0,MODE_HIGH,candles,4)]
كود PHP:Low[iLowest (NULL,0,MODE_LOW,candles,4)]
جزاكم الله خيرا واعانكم لما فية الخير والصلاح ..
- 20-03-2013, 06:43 AM #3500
- 20-03-2013, 08:13 PM #3501
- 20-03-2013, 08:26 PM #3502
- 20-03-2013, 11:06 PM #3503
- 20-03-2013, 11:47 PM #3504
رد:موضوع مخصص للأسئلة البرمجية
بالفعل شكرا لك يا هندسة
جاري التجربة
ولكن الاكسبرت في بعض الاحيان وليس جميعها (بصوة عشوائية) يقوم بفتح صفقات متعددة تقريبا من نفس السعر او بفرق 1 او 2 بيب
اريد مستر دولار شرط عام بحيث مثلا يسمي
max trade =1
بحيث ان لا يفتح الا صفقة واحدة علي الشارت الواحد لاي زوج وذلك لمنع التكرار لهذا الاكسبرت او اي اكسبرت اخر
ولا يفتح صفقة اخري الي بتحقق الشروط من جديد بعد اغلاق الصفقة السابقة
فما هذا الكود العام
شكرا وبارك الله علي مساعدتك الدائمة
- 21-03-2013, 12:47 AM #3505
رد:موضوع مخصص للأسئلة البرمجية
نعم ملاحظتك صحيحه
جرب هذا الكود
كود PHP:int Real_Symb()
{
int TotalSymbols=0;
string S[];
ArrayResize(S,1);
S[0]="";
for( int cnt=0; cnt<OrdersTotal(); cnt++)
{
OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
string symbol=OrderSymbol();
if(OrderType()==OP_BUY || OrderType()==OP_SELL)
{
bool SymbCount=false;
for (int i=0; i<ArraySize(S); i++)
{
if( S[i]==symbol )
{
SymbCount=true;
break;
}
}
if(SymbCount==false)
{
Alert(TotalSymbols,"==",ArraySize(S));
S[TotalSymbols]=symbol;
ArrayResize(S,ArraySize(S)+1);
TotalSymbols++;
}
}
}
return(TotalSymbols);
}
- 21-03-2013, 02:51 AM #3506
- 21-03-2013, 09:30 PM #3507
رد:موضوع مخصص للأسئلة البرمجية
السلام عليكم ورحمة الله وبركاته
تحية طيبة أستاذي القدير مستر دولار
واجهتني مشكلة ببعض المنصات حيث الأمر OrderModify لا يتفعل في بعض الأحيان مما يسبب خسائر فادحة بعدم تفعيل SL و TP
وبالتالي فكرت في إغلاق أوتوماتيكي من قبل الاكسبيرت كعمل إحتياطي
وبذلك قمت بإضافة الكود التالي :
كود PHP:void CloseBuyOrdersHiddenTP()
{
int total=OrdersTotal();
for (int cnt=total;cnt>=0;cnt--)
{
OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
if(OrderSymbol()==Symbol())
{
if(OrderType()==OP_BUY&&Bid>(OrderOpenPrice()+Takeprofit*PipValue*Point))
{
OrderClose(OrderTicket(),OrderLots(),Bid,3);
}
}
}
return(0);
}
void CloseBuyOrdersHiddenSL()
{
int total=OrdersTotal();
for (int cnt=total;cnt>=0;cnt--)
{
OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
if(OrderSymbol()==Symbol())
{
if(OrderType()==OP_BUY&&Bid<(OrderOpenPrice()-Stoploss*PipValue*Point))
{
OrderClose(OrderTicket(),OrderLots(),Bid,3);
}
}
}
return(0);
}
void CloseSellOrdersHiddenTP()
{
int total=OrdersTotal();
for(int cnt=total;cnt>=0;cnt--)
{
OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
if(OrderSymbol()==Symbol())
{
if(OrderType()==OP_SELL&&Ask<(OrderOpenPrice()-Takeprofit*PipValue*Point))
{
OrderClose(OrderTicket(),OrderLots(),Ask,3);
}
}
}
return(0);
}
void CloseSellOrdersHiddenSL()
{
int total=OrdersTotal();
for(int cnt=total;cnt>=0;cnt--)
{
OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
if(OrderSymbol()==Symbol())
{
if(OrderType()==OP_SELL&&Ask>(OrderOpenPrice()+Stoploss*PipValue*Point))
{
OrderClose(OrderTicket(),OrderLots(),Ask,3);
}
}
}
return(0);
}
كود PHP:
void OnEveryTick()
{
CloseBuyOrdersHiddenTP();
CloseSellOrdersHiddenTP();
CloseBuyOrdersHiddenSL();
CloseSellOrdersHiddenSL();
}
سؤالي هل يوجد خطأ في الأكواد ؟ وهل فعلا سيعمل الاكسبيرت بالاغلاق الأوتوماتيكي حسب الهدف والستوب المحددين بالرغم من عدم حصول أمر موديفاي الصفقة ؟؟؟
علما أن الأوامر المستخدمة بالاكسبيرت هي أوامر معلقة باي ستوب وسيل ستوب
بانتظار ردك أستاذي وجزاك الله عنا كل خير
آخر تعديل بواسطة kira-h ، 21-03-2013 الساعة 09:51 PM
- 22-03-2013, 12:05 AM #3508
رد:موضوع مخصص للأسئلة البرمجية
نعم الأوامر صحيحه
لكن فقط أضف شرط بسيط
كود PHP:void OnEveryTick()
{
if(TakeProfit>0)
{
CloseBuyOrdersHiddenTP();
CloseSellOrdersHiddenTP();
}
if(StopLoss>0)
{
CloseBuyOrdersHiddenSL();
CloseSellOrdersHiddenSL();
}
}
- 22-03-2013, 12:47 AM #3509
- 23-03-2013, 01:12 AM #3510
المواضيع المتشابهه
-
موضوع مخصص للاكسبيرتات اللتي يستخدمها الاعضاء على الحقيقي,,عندك اكسبيرت ممتاز ضعه هنا
By محمد معمو in forum برمجة المؤشرات واكسبرتات التداول - Experts Advisor EAمشاركات: 11آخر مشاركة: 15-12-2023, 02:03 PM -
عااااااااااااجل ( موضوع مخصص للفرص الفورية)!!!
By عاشق الذبذبـة in forum توقعات وتوصيات سوق العملاتمشاركات: 280آخر مشاركة: 27-08-2009, 10:30 PM