النتائج 5,461 إلى 5,475 من 10335
الموضوع: موضوع مخصص للأسئلة البرمجية
- 09-06-2014, 08:38 PM #5461
- 09-06-2014, 10:31 PM #5462
مستر دولار الفاضل قمت بعمل هذا الاكسبيرت لكنه لايعمل لا ادري ما السبب
فضلا وليس امرا اذا تكرمت توضيح الخطا مع كامل الحب والتقدير وشكرا
كود PHP:extern int CAHRT1=240;
extern int CAHRT2 =60;
extern int CAHRT3=30;
extern int CAHRT4=5;
extern int lavelbuy=-60;
extern int lavelsell=60;
extern int TakeProfit=90;
extern int StopLoss=40;
extern int MagicNumber = 1;
extern int Trailing_Stop = 0;// الوقف المتح
extern double Lot=0.1;//
int t1,t2;
double point;
int digits,Q;
//+------------------------------------------------------------------+
//| expert initialization function |
//+------------------------------------------------------------------+
int init()
{
if(Digits<4)
{
point=0.01;
digits=2;
}
else
{
point=0.0001;
digits=4;
}
//----
//----
return(0);
}
//+------------------------------------------------------------------+
//| expert deinitialization function |
//+------------------------------------------------------------------+
int deinit()
{
//----
//----
return(0);
}
//+------------------------------------------------------------------+
//| expert start function |
//+------------------------------------------------------------------+
int start()
{
double b,s,bsl,ssl,bt,st;
int PT;
b= Ask;
s=Bid;
if (StopLoss>0)
{
bsl=b-StopLoss*Point*Q;
ssl=s+StopLoss*Point*Q;
}
else
{
bsl=0;
ssl=0;
}
if (TakeProfit>0)
{
bt=b+TakeProfit*Point*Q;
st=s-TakeProfit*Point*Q;
}
else
{
bt=0;
st=0;
}
double lTrailingStop = Trailing_Stop;
double sTrailingStop = Trailing_Stop;
if(lTrailingStop>0||sTrailingStop>0){//3
TrailingPositionsBuy(lTrailingStop);
TrailingPositionsSell(sTrailingStop);
}
int cnt, ticket, total;
double MOV1= iMA(NULL,CAHRT1,4,0,0,0,1);
double MOV2=iMA(NULL,CAHRT1,9,0,0,0,1);
double MOV3=iMA(NULL,CAHRT1,18,0,0,0,1);
double MOV4= iMA(NULL,CAHRT2,4,0,0,0,1);
double MOV5=iMA(NULL,CAHRT2,9,0,0,0,1);
double MOV6=iMA(NULL,CAHRT2,18,0,0,0,1);
double RE1=iCustom(NULL, CAHRT3, "REI",0,0,2);
double RE2=iCustom(NULL, CAHRT3, "REI",0,0,1);
double RE3=iCustom(NULL, CAHRT4, "REI",0,0,2);
double RE4=iCustom(NULL, CAHRT4, "REI",0,0,1);
if((MOV1>MOV2&&MOV2>MOV3&&RE1<lavelbuy && RE2 >lavelbuy) ||(MOV4>MOV5&&MOV5>MOV6&&RE3<lavelbuy&&RE2>lavelbuy)
&&MyBuyRealOrdersTotal(MagicNumber)==0)//1
{
ticket=OrderSend(Symbol(),OP_BUY,Lot,b,3*Q,bsl,bt,"",MagicNumber,0,Green );
int AlertNumber;
while(AlertNumber<15){
Alert("Buy Order ");
AlertNumber++;
Sleep(8000);
if(ticket>0)
{
if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES)) Print("BUY order opened : ",OrderOpenPrice());
}
else Print("Error opening BUY order : ",GetLastError());
return(0);
}
if((MOV2>MOV1&&MOV3>MOV2&&RE1>lavelsell&&RE2<lavelsell) ||(MOV4<MOV5&&MOV5<MOV6&&RE3>lavelsell&&RE2<lavelsell)&&
MySellRealOrdersTotal(MagicNumber)==0)//
{
ticket=OrderSend(Symbol(),OP_SELL,Lot,s,3*Q,ssl,st,"",MagicNumber,0,Red);
while(AlertNumber<20){
Alert("sell Order ");
AlertNumber++;
Sleep(8000);
}
if(ticket>0)
if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES)) Print("SELL order opened : ",OrderOpenPrice());
}
else Print("Error opening SELL order : ",GetLastError());
return(0);
}
return(0);
}
return(0);
//+---------------
// وظيفة لحساب عدد الصفقات الحالية (للشراء)
int MyBuyRealOrdersTotal(int MagicNumber)
{
int c=0;
int total = OrdersTotal();
t1=-1;
t2=-1;
for (int cnt = 0 ; cnt < total ; cnt++)
{
OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
if (OrderMagicNumber() == MagicNumber && OrderSymbol()==Symbol() && (OrderType()==OP_BUY))
{
if (t1==-1)
{
t1=OrderTicket();
}
else
{
if (t2==-1)
{
t2=OrderTicket();
}
}
c++;
}
}
return(c);
}
// وظيفة لحساب عدد الصفقات الحالية للبيع
int MySellRealOrdersTotal(int MagicNumber)
{
int c=0;
int total = OrdersTotal();
t1=-1;
t2=-1;
for (int cnt = 0 ; cnt < total ; cnt++)
{
OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
if (OrderMagicNumber() == MagicNumber && OrderSymbol()==Symbol() && (OrderType()==OP_SELL))
{
if (t1==-1)
{
t1=OrderTicket();
}
else
{
if (t2==-1)
{
t2=OrderTicket();
}
}
c++;
}
}
return(c);
}
//+------------------------------------------------------------------+
void TrailingPositionsBuy(int trailingStop) {
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 (Bid-OrderOpenPrice()>trailingStop*Point*Q) {
if (OrderStopLoss()<Bid-trailingStop*Point*Q)
ModifyStopLoss(Bid-trailingStop*Point*Q);
}
}
}
}
}
}
void TrailingPositionsSell(int trailingStop) {
for (int i=0; i<OrdersTotal(); i++) {
if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) {
if (OrderSymbol()==Symbol() && OrderMagicNumber()==MagicNumber) {
if (OrderType()==OP_SELL) {
if (OrderOpenPrice()-Ask>trailingStop*Point*Q) {
if (OrderStopLoss()>Ask+trailingStop*Point*Q || OrderStopLoss()==0)
ModifyStopLoss(Ask+trailingStop*Point*Q);
}
}
}
}
}
}
void ModifyStopLoss(double ldStopLoss) {
bool fm;
fm = OrderModify(OrderTicket(),OrderOpenPrice(),ldStopLoss,OrderTakeProfit(),0,CLR_NONE);
}
مرفق الموشرآخر تعديل بواسطة ابواحمد222 ، 09-06-2014 الساعة 10:34 PM
- 09-06-2014, 10:49 PM #5463
تحتاج كود كائن تكست Object لأظهار ماتريد باللون والمكان ، تفضل الكود ومكان كلمة Daod اكتب ماتريد .
كود PHP:
ObjectCreate("jmeel_1", OBJ_LABEL, 0, 0, 0); ObjectSetText("Jmeel_1", "daod daod daod daod daod ", 12, "", clrGold); ObjectSet("Jmeel_1", OBJPROP_CORNER,1); ObjectSet("Jmeel_1", OBJPROP_XDISTANCE,100); ObjectSet("Jmeel_1", OBJPROP_YDISTANCE,40);
- 09-06-2014, 11:51 PM #5464
- 10-06-2014, 12:00 AM #5465
- 10-06-2014, 02:08 AM #5466
- 10-06-2014, 09:05 AM #5467
انت هو الفنان والمحترف اخى جميل .
تلميذ مستر دولار
لو المؤشر الاول لا يعمل على بعض المنصات
تم التعديل على المؤشر فى المرفقات
..............
فى موضوع ثانى
ارجو المساعدة فيه مهم جدا
الان يوجد عندى مؤشر مفتوح الكود وتم عمل اكسبيرت عليه
بس المشكلة هنا
لازم تعمل تحديث للشارت مع كل شمعة جديدة لو فريم الساعة او الاربعة ساعات
ماهو حل هذه المشكلة ؟
انا وضعت فى الاكسبيرت والمؤشركود PHP:RefreshRates()
لو فى طريقة تعمل هى التحديث
ولكم الشكر والتقدير
- 10-06-2014, 09:41 AM #5468
جزاك الله كل خير اخي جميل تم عمل التعديلات لكن هناك ملاحظه انه يفتح صفقات شراء ولا يفتح صفقات بيع مرفق الاكسبيرت بعد التعديل الذي تم
هناك خطا في الاكسبيرت لا اعرف ما هو مع انني دققته اكثر من مره ولم اجد السبب قمت بعمل باك تيست لمعظم العملات يفتح شراء ولا يفتح بيع مع توفر الشروط التي هي ببساطه
البيع
1 متوسط 4 اقل من متوسط 9 شارت 240
2 متوسط 9 اقل من متوسط 18 شارت 240
3 اشاره بيع من موشر rei (كسر مستوى 60 موجب ) على شارت 30
4 او استخدام شارت 60 مع شارت 5 دقائق
الشراء العكس
اعتذر اخي الفاضل على الاطاله وفضلا وليس امرا اذا تكرمت وتفضلت علينا وشكرا لك مقدما وجزاك كل خير
- 10-06-2014, 09:50 AM #5469
1-ما هو الفرق بين الاستوب المتحرك الموجود في الميتاتريدر ووالاستوب المتحرك الذي يتم برمجته من قبل المبرمجين ؟
2-وهل في يتحرك وقف الخساره نقطه نقطه في الاستوب المتحركام انه يمكن التحكم في ذلك يعني كل خمس او ثمان نقاط وهكذا؟
3-وهل يجب ان يظل الكمبيوتر مفتوح او شغال من اجل عمليه الاستوب المتحرك سواء الموجود في المياترتريد او المبرمج من قبل المبرمجين؟
4-وما الفرق بين الاستوب المتحرك والبريك وايهما افضل؟وايهما لايحتاج ان يظل الكمبيوتر شغال؟
- 10-06-2014, 10:57 AM #5470
- 10-06-2014, 11:16 AM #5471
- 10-06-2014, 12:13 PM #5472
- 10-06-2014, 12:20 PM #5473
- 10-06-2014, 12:33 PM #5474
- 10-06-2014, 01:30 PM #5475
السلام عليكم اخى الكريم جميل
جزاك الله خير على المساعدة
بس تم وضع الكود داخل المؤشر وداخل الاكسبيرت وهوكود PHP:if(Volume[0]<5){ ObjectsDeleteAll();
الاكسبيرت يفتح اول صفقة ولا يفتح صفقات اخرى بسبب تحديث المؤشر لايعمل
لو فى طريقة اخرى
او ممكن تجرب الاكسبيرت مع المؤشر باك تست
وشكرا على المساعدة
تحياتى لك
المواضيع المتشابهه
-
موضوع مخصص للاكسبيرتات اللتي يستخدمها الاعضاء على الحقيقي,,عندك اكسبيرت ممتاز ضعه هنا
By محمد معمو in forum برمجة المؤشرات واكسبرتات التداول - Experts Advisor EAمشاركات: 11آخر مشاركة: 15-12-2023, 02:03 PM -
عااااااااااااجل ( موضوع مخصص للفرص الفورية)!!!
By عاشق الذبذبـة in forum توقعات وتوصيات سوق العملاتمشاركات: 280آخر مشاركة: 27-08-2009, 10:30 PM