النتائج 1 إلى 15 من 27
الموضوع: طلب مؤشر بسيط جدا
- 27-10-2017, 04:48 PM #1
طلب مؤشر بسيط جدا
سلام عليكم
ارجو التكرم من اهل الشأن بهذا القسم اعطائي مؤشر يكتب بالارقام (الفارق) فقط بين الهاي واللو للشموع كلها تنكتب الارقام اعلى الشموع ونفس الامر كذلك يحسب الفارق بين الافتتاح والاغلاق لكل شمعة ع حدة ويظهره رقم اعلاها
اتمنى يكون المؤشر للمنصة ذات خمسة ارقام بعد الفاصلة ولو في خاصية تسمح للحساب ع منصة اربع خانات بنفس المؤشر يكون تمام
اول طلب واتمنى الرد سريعا للاهمية لي
- 27-10-2017, 05:35 PM #2
محجوز
- 27-10-2017, 06:46 PM #3كود PHP:
input string InpFont="Arial"; // Font
int OnInit()
{
ObjectsDeleteAll();
return(INIT_SUCCEEDED);
}
//+------------------------------------------------------------------+
bool TextCreate(const long chart_ID=0, // chart's ID
const string name="Text", // object name
const int sub_window=0, // subwindow index
datetime time=0, // anchor point time
double price=0, // anchor point price
const string text="Text", // the text itself
const string font="Arial", // font
const int font_size=10, // font size
const color clr=clrRed, // color
const double angle=0.0, // text slope
const ENUM_ANCHOR_POINT anchor=ANCHOR_LEFT_UPPER, // anchor type
const bool back=false, // in the background
const bool selection=false, // highlight to move
const bool hidden=true, // hidden in the object list
const long z_order=0) // priority for mouse click
{
ResetLastError();
if(!ObjectCreate(chart_ID,name,OBJ_TEXT,sub_window,time,price))
{
Print(__FUNCTION__,
": failed to create "Text" object! Error code = ",GetLastError());
return(false);
}
ObjectSetString(chart_ID,name,OBJPROP_TEXT,text);
ObjectSetString(chart_ID,name,OBJPROP_FONT,font);
ObjectSetInteger(chart_ID,name,OBJPROP_FONTSIZE,font_size);
ObjectSetDouble(chart_ID,name,OBJPROP_ANGLE,angle);
ObjectSetInteger(chart_ID,name,OBJPROP_ANCHOR,anchor);
ObjectSetInteger(chart_ID,name,OBJPROP_COLOR,clr);
ObjectSetInteger(chart_ID,name,OBJPROP_BACK,back);
ObjectSetInteger(chart_ID,name,OBJPROP_SELECTABLE,selection);
ObjectSetInteger(chart_ID,name,OBJPROP_SELECTED,selection);
ObjectSetInteger(chart_ID,name,OBJPROP_HIDDEN,hidden);
ObjectSetInteger(chart_ID,name,OBJPROP_ZORDER,z_order);
return(true);
}
//+------------------------------------------------------------------+
void OnTick()
{
datetime date[]; // array for storing dates of visible bars
double low[]; // array for storing Low prices of visible bars
double high[]; // array for storing High prices of visible bars
//--- number of visible bars in the chart window
int bars=(int)ChartGetInteger(0,CHART_VISIBLE_BARS);
//--- memory allocation
ArrayResize(date,bars);
ArrayResize(low,bars);
ArrayResize(high,bars);
//--- fill the array of dates
ResetLastError();
if(CopyTime(Symbol(),Period(),0,bars,date)==-1)
{
Print("Failed to copy time values! Error code = ",GetLastError());
return;
}
//--- fill the array of Low prices
if(CopyLow(Symbol(),Period(),0,bars,low)==-1)
{
Print("Failed to copy the values of Low prices! Error code = ",GetLastError());
return;
}
//--- fill the array of High prices
if(CopyHigh(Symbol(),Period(),0,bars,high)==-1)
{
Print("Failed to copy the values of High prices! Error code = ",GetLastError());
return;
}
//--- define how often texts are to be displayed
int scale=(int)ChartGetInteger(0,CHART_SCALE);
//--- define the step
int step=1;
switch(scale)
{
case 0:
step=12;
break;
case 1:
step=6;
break;
case 2:
step=4;
break;
case 3:
step=2;
break;
}
//--- create texts for High and Low bars' values (with gaps)
int Det=0;
if(_Digits==5 || _Digits==3) Det=1;
for(int i=0;i<bars;i+=step)
{
//--- create the texts
string H_L=DoubleToString(MathPow(10,_Digits-Det)*(iHigh( NULL,0,i) -iLow(NULL,0,i)),Det);
string C_O=DoubleToString(MathPow(10,_Digits-Det)*(iClose(NULL,0,i)-iOpen(NULL,0,i)),Det);
ObjectDelete(0,"TextHigh_"+(string)i) ;ObjectDelete(0,"TextLow_"+(string)i) ;
if(!TextCreate(0,"TextHigh_"+(string)i,0,date[i],high[i],H_L,InpFont,10,
clrYellow,90,(ENUM_ANCHOR_POINT)ANCHOR_BOTTOM,false,false,true,0))
{
return;
}
if(!TextCreate(0,"TextLow_"+(string)i,0,date[i],low[i],C_O,InpFont,10,
clrOrange,-90,(ENUM_ANCHOR_POINT)ANCHOR_BOTTOM,false,false,true,0))
{
return;
}
//--- check if the script's operation has been forcefully disabled
if(IsStopped())
return;
//--- redraw the chart
ChartRedraw();
// 0.05 seconds of delay
Sleep(50);
}
}
void OnDeinit(const int reason)
{
//--- destroy timer
ObjectsDeleteAll();
}
- 27-10-2017, 06:58 PM #4
- 27-10-2017, 07:05 PM #5
للاسف اخي فيلسوف المؤشر لا يعمل ع المنصة
ع كل , ما قصرت ننتظر الاخ 500 دولار يساعدنا
- 27-10-2017, 07:21 PM #6
لا تتفلسف
يحفظ تحت EXPERTS لأنه ليس مؤشر بل عرض معلومات.
لايوجد شيء اسمه "لايعمل على المنصة"
فكل برنامج تجده يعمل على المنصة---اذا وضع في مكانه الصحيح
- 27-10-2017, 07:31 PM #7
- 27-10-2017, 07:34 PM #8
- 27-10-2017, 07:58 PM #9
ما شتغل لا بمجلد الاكسبرتات ولا بمجلد الانديكيتورات ولا الديكورات
اعتقد المشكلة بالصيغة لو تقدر تحولها افضل
- 27-10-2017, 08:12 PM #10
- 27-10-2017, 08:13 PM #11
ببعض المرات يصدق علي :
طايح (ن) حظه من القمة --- للطيان (جمع طين
- 27-10-2017, 09:04 PM #12
الحمد لله تم تشغيله بعد محاولات
اخي فيلسوف الارقام لم افهمها ابدا
انا مقصودي كمثال طرح الاوبن من الكلوز :1.18434-1.18110 = 324 ويظهر اعلى الشمعة هذا الرقم اي ع شموع منتهية تبدا من قبل الحالية الغير منتهية الى ما قبلها (منصة 5 ارقام) وكذلك الفرق بين الهاي واللو بنفس الامر
الارقام تتغير عندي يبدو انها مربوطة بصعود وهبوط الشمعة الحالية -- ما اريده يسجل بعد انتهاء اي شمعة
اتمنى وصلت الفكرة واسف لو كان ازعاج
- 27-10-2017, 09:09 PM #13
ممتاز--طلبك واضح--والبرنامج اعلاه يجيب سؤالك
الارقامك العلوية الفرق بين الهاوي واللو لذا لاتتغير الا اذا تغير احدها لاخر شمعة--الشموع السابقة طبعا لاتتغير لانها منتهية او ميتة
الارقام السفلية لا تتغير الا لاخر شمعة لانها الغلاق والافتتاح
الارقام هي فرق النقاط-الببات
يعني الفرق بين السعرين ضرب 10000
ملحوظة=---غير الفريم ثم رجعه ليمسح القيم اللي جاية فوق بعض
- 27-10-2017, 09:15 PM #14اعتقد المشكلة بالصيغة لو تقدر تحولها افضل
--
ليكون البرنامج اخف سيتم اختصار عدد الشموع التي يعرض الفروق لها ولتكن فقط اخر 100 شمعة
- 27-10-2017, 09:31 PM #15
ابشر ع هالخشم
لكن يا خوي يا ما فهمتني زين يا انا اللي مانا بداري وين حاطني ربي
خلك معاي دقيقة
اخر شمعة لليورو دولار فريم الساعة اتركها - شوف الشمعة اللي قبلها 115900 افتتاحها واغلاقها 115863 المفروض يسجل لي اعلاها او تحتها -او محل ما يحب المؤشر - المفروض يسجل 37 فقط ! ناتج طرحهم اهو مسجل 26.2 ومسجل 15.8 ؟ كيف جات والله احترت !!!