Jede Anfängerfrage, um das Forum nicht zu überladen. Fachleute, gehen Sie nicht vorbei. Nirgendwo ohne dich - 6. - Seite 622

 

Kann jemand vorschlagen, installieren Sie das Plugin GetTickerHistory in MT-4, läuft, aber der Download nicht gehen, auf Windows 7 x64, ist es möglich, die externen Indizes auf andere Weise herunterladen.

Vielen Dank im Voraus.
 

Ist es möglich, Charts für die technische Analyse herunterzuladen, - Indizes S & P 500 Futures Chart, TA 25 Chart, und die S & P 500 Chart, wenn möglich, kann auffordern, wie dies zu tun, vielleicht gibt es eine Erklärung, wie zum Download!

Ich kann nicht finden, wie ein Broker, können Sie beraten ein Programm für die technische Analyse, die mir erlaubt, die Indizes, die ich interessiert bin (kann in Echtzeit) oder ein Broker herunterladen.

Vielleicht gibt es eine Möglichkeit, diese Indizes MT-4 oder MT-5 herunterzuladen. Ich fange gerade an, mich mit der technischen Analyse zu befassen, und würde mich über fachkundige Ratschläge freuen, wie ich meine Aufgabe bewältigen kann.

Ich bin Ihnen im Voraus für Ihre Hilfe sehr dankbar.
 
Helfen Sie mir herauszufinden, wie ich mit Objekten umgehen soll.
Versuchen Sie, den Preis des letzten Objekts zu ermitteln, indem Sie die ersten 3 Buchstaben seines Namens kennen.

Ich danke Ihnen.

double Entry()
{
  double Price;
  string ObjName ="ABC";
  int QuantObjects=ObjectsTotal();
  for(Cnt=QuantObjects-1;Cnt>=0;Cnt--)
  { 
    if(ObjectFind(0,StringSubstr(ObjName,3,StringLen(ObjName)-3)) > -1)
    {
      Price = NormalizeDouble(ObjectGet(StringSubstr(ObjName,3,StringLen(ObjName)-3),OBJPROP_PRICE1),Digits);
    }
    else Price = 0;
  }
  return(Price);
}

 
rustein:
Helfen Sie mir herauszufinden, wie ich mit Objekten umgehen soll.
Versuchen Sie, den Preis des letzten Objekts zu ermitteln, indem Sie die ersten 3 Buchstaben seines Namens kennen.

Ich danke Ihnen.

Versuchen Sie dies.

double Entry()
{
  double Price;
  string ObjName ="ABC";
  int QuantObjects=ObjectsTotal();
  string name;
  for(Cnt=QuantObjects-1;Cnt>=0;Cnt--)
  { 
   name=ObjectName(cnt);
   if(StringSubstr(name,0,3)=ObjName)
    {
      Price = NormalizeDouble(ObjectGet(name,OBJPROP_PRICE1),Digits);
return(Price);

    }
    else Price = 0;
  }
  return(Price);
}
 
Roger:

Also versuchen Sie es.


Das funktioniert,
Ich danke Ihnen vielmals.
 

Ich habe einen Indikator:

//+------------------------------------------------------------------+
//| T3MA_ALARM.mq4 |
//| Copyright © 2011, Martingeil |
//| fx.09@mail.ru |
//+------------------------------------------------------------------+
//исправленный Martingeil, теперь можно в тестере увидеть его стрелки.
#property copyright "Copyright © 2011, Martingeil"
#property link "fx.09@mail.ru"

//---- indicator settings
#property indicator_chart_window
#property indicator_buffers 2
#property indicator_color1 Blue
#property indicator_color2 Red
//---- indicator parameters
extern int period = 4; //12
extern int shift = 0; //сдвиг по бару
//---- indicator buffers
double BufferUp[],BufferDn[];
int q,st=5;
//+------------------------------------------------------------------+
//| Custom indicator initialization function |
//+------------------------------------------------------------------+
int init()
{
IndicatorBuffers(2);
//---- drawing settings
SetIndexStyle(0,DRAW_ARROW,2);
SetIndexArrow(0,233);
SetIndexStyle(1,DRAW_ARROW,2);
SetIndexArrow(1,234);

SetIndexBuffer(0,BufferUp);//стрелка синяя верх
SetIndexBuffer(1,BufferDn);//стрелка красная вниз
//---- name for DataWindow and indicator subwindow label
IndicatorShortName("T3MA-ALARM ("+period+")");
//---- initialization done
if(Digits==3 || Digits==5) q=10;
st=st*q;
return(0);}

int deinit()
{
ObjectDelete("low");
ObjectDelete("high");
}
//+----------------------------------------------------------------------+
//| Moving Average of Oscillator |
//+----------------------------------------------------------------------+
int start()
{
//---- ArraySetAsSeries --------------------------------------------------
double Ma[500],MaOn[500];
double y0[500],y1[500],y2[500];
int i,limit=ArraySize(Ma);
ArraySetAsSeries(Ma,true);
//---- IndicatorCounted --------------------------------------------------
int counted_bars=IndicatorCounted();
int limit1=Bars-counted_bars;
if (limit1>1){limit1=Bars-period-1;}
//---- EMA ---------------------------------------------------------------
for(i=limit1; i>=0; i--) Ma[i] =iMA(NULL,0,period,0,MODE_EMA,PRICE_CLOSE,i);
for(i=limit1; i>=0; i--) MaOn[i]=iMAOnArray(Ma,limit,period,0,MODE_EMA,i);

for(i=limit1; i>=0; i--)
{
y0[i+shift]=MaOn[i+shift];
y1[i+1+shift]=MaOn[i+1+shift];
y2[i+2+shift]=MaOn[i+2+shift];

if(y0[i+shift]-y1[i+1+shift]<0 && y1[i+1+shift]-y2[i+2+shift]>0){BufferDn[i+1]=High[i+1]+st*Point;}//продажа
if(y0[i+shift]-y1[i+1+shift]>0 && y1[i+1+shift]-y2[i+2+shift]<0){BufferUp[i+1]=Low[i+1]-st*Point;}//покупка
//---- Signal Trend Up || Dn ---------------------------------------------
if(y0[i]-y1[i+1]>0) Comment ("\n SWAPLONG = ",MarketInfo(Symbol(),MODE_SWAPLONG),
" SWAPSHORT = ",MarketInfo(Symbol(),MODE_SWAPSHORT),"\n BUY TREND ",DoubleToStr(Close[i],Digits));

else if(y0[i]-y1[i+1]<0) Comment ("\n SWAPLONG = ",MarketInfo(Symbol(),MODE_SWAPLONG),
" SWAPSHORT = ",MarketInfo(Symbol(),MODE_SWAPSHORT),"\n SELL TREND ",DoubleToStr(Close[i],Digits));
}


//---- done
return(0);}
//+---------------------------------------------------------------------+


Ich möchte eine EA, die eine Position eingeben würde, wenn ein Pfeil erscheint, welche Bedingung sollte in der EA geschrieben werden?

 

Guten Tag an alle .... Meine Herren, helfen Sie mir bei einer Frage zu einem Zeitparameter. Das Problem ist folgendes: Ich habe ein Eingabekriterium mit Variablen, die auf einen bestimmten Zeitparameter festgelegt sind.

M5maBIG_1= iMA(ed,PERIOD_M5,150,0,MODE_EMA,PRICE_CLOSE,1);

M5L=NormalizeDouble(iLow(ed,PERIOD_M5,1),Digits);

if(M5L<M5maBIG_1){ordersend(520);} versucht solche Varianten wie---- ((M5L<M5maBIG_1))__((M5L)<(M5maBIG_1))__((M5L)<(M5maBIG_1)))---- funktioniert auch nicht!

if(a==520){RefreshRates();//__________________________________________________________________________________

op=NormalizeDouble(Ask,Digits);sl=NormalizeDouble(op-62*kio*Point,Digits);tp=NormalizeDouble(op+54*kio*Point,Digits);

ticket=OrderSend(ed,OP_BUY, Lot,op,3,sl,0,comm,magic+520,0,Green);//_____Lot=

err=GetLastError();

if(err!=0){Drucken("Fehler-",err," op-",op," sl-",sl," tp-",tp);}}

Alles funktioniert, wenn Test auf dem gleichen M5 Zeit, aber nur ändern (beim Testen, zum Beispiel auf H1), das Ergebnis ändert sich auch, wie man richtig zu schreiben? Danke!!!

 

MaperiodAVTO = 750 / Period();

laveosa:


Guten Tag an alle .... Meine Herren, helfen Sie mir bei einer Frage zu einem Zeitparameter. Das Problem ist folgendes: Ich habe ein Eingabekriterium mit Variablen, die auf einen bestimmten Zeitparameter festgelegt sind.

M5maBIG_1= iMA(ed,PERIOD_M5,150,0,MODE_EMA,PRICE_CLOSE,1);

M5L=NormalizeDouble(iLow(ed,PERIOD_M5,1),Digits);

Zum Beispiel so:

 int MaperiodAVTO; 

if( Period()>1){ 

MaperiodAVTO = 750 / Period();

}

else

{

  MaperiodAVTO = 750;

}

 M5maBIG_1= iMA(ed, Period() , MaperiodAVTO ,0,MODE_EMA,PRICE_CLOSE,1);  


 
benzovoz:

Zum Beispiel so:

int MaperiodAVTO = 750 / Period();

  M5maBIG_1= iMA(ed, Period() , MaperiodAVTO ,0,MODE_EMA,PRICE_CLOSE,1);  



Warum 750?
 
laveosa:

Warum 750?

Er mag diese Nummer einfach.
Grund der Beschwerde: