النتائج 1 إلى 7 من 7
الموضوع: كيف يمكنني كتابة هذا الأمر
- 19-11-2011, 12:27 PM #1
كيف يمكنني كتابة هذا الأمر
السلام عليكم جميع
أول ما أشغل الإكسبيرت بيفتح أمر معلق على بعد عدد معين من النقاط من سعر بدأ تشغيل الإكسبيرت
فلنفرض عند بدأتشغيل الإكسبيرت كان السعر على 1200 و فيقوم الإكسبيرت بفتح عملية معلقة على بعد 20 نقطة يعني 1220 , بعد كده أتفعل الأمر هذا
فكيف يمكنني من تعريف هذا السعر ( 1220 ) لأستخدمه لفتح عمليات أخرى ؟؟ أرجو كتابة الأمر برمجيا إن أمكن !
للعلم بأن هذا الأمر المفعل له عدد لوت مختلف عن باقي الأوامر و اللتي سوف يقوم الإكسبيرت بفتحها .
إن شاء الله المطلوب واضح
و دمتم بخير
- 19-11-2011, 06:57 PM #2
وعليكم السلام ورحمة الله وبركاته
إستخدم الداله GlobalVariableSet لحفظ سعر فتح الصفقة كمثال
كود PHP:if(GlobalVariableGet("Price")==0){
GlobalVariableSet("Price",Bid);
}
كود PHP:GlobalVariableGet("Price");
- 20-11-2011, 08:59 PM #3
شكرا مستر دولار
أنا كتبت الأمر بالشكل التالي
كود PHP:if (MyBuyRealOrdersTotal(MagicNumber)==1)
GlobalVariableSet("UpLevel",OrderOpenPrice());
BBP=GlobalVariableGet("UpLevel");
فأين تكمن المشكلة أو كيف أتفادى هذه المشكلة ؟؟
و شكرا لتعاونك
- 20-11-2011, 11:36 PM #4
- 21-11-2011, 07:55 AM #5
شكرا مستر ولار
لقد أدىكود PHP:GlobalVariableDel
لكن لم أستطع أن أستدعي GlobalVariableGet هنا
كود PHP:void TrailingTakeProfitBuy(int trailingTakeProfit)
{
for (int i=0; i<OrdersTotal(); i++)
{
if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES))
{
if (OrderSymbol()==Symbol() && OrderMagicNumber()==MagicNumber)
{
if (OrderType()==OP_BUY )
{
if (OrdersTotal()==1)
ModifyTakProfit(GlobalVariableGet("UpLevel")+61*Poin);
غلبتك معاي يا باش مهندس
- 22-11-2011, 09:58 AM #6
للأعلى
- 22-11-2011, 04:52 PM #7
لقد قمت بعمل إكسبيرت جديد و أستخدمت الدالة من جديد في نفس المكان اللي ما رضي يتعرف عليه من قبل ....... و ظبطت العملية
ممكن المشكلة كانت من بعض الصيغ في الإكسبيرت القديم و اللي ماله داعي من وجوده
عموما السؤال الأخير لقفل هذا الموضوع , هل من الممكن إستدعاء الدالة
كود:GlobalVariableSet("Price",Bid)
و شكرا يا باش مهندس أسامة