[MT4指标]求教!!MT指标编程输入方法
求教各位MT的指标程序文档怎么转化为可运行的程序?
/**
* ACD_2.mq4
* Pivot Range and Previous High/Low
**/
#property indicator_chart_window
#property indicator_buffers 5
#property indicator_color1 Orchid
#property indicator_color2 DarkOrchid
#property indicator_color3 DarkOrchid
#property indicator_color4 Khaki
#property indicator_color5 Khaki
//Input Params
extern string PivotRangeStart = "21:00";
extern string PivotRangeEnd = "21:00";
extern bool DisplayPivotPoint = true;
extern bool DisplayPreviousHighLow = true;
double Buffer1;
double Buffer2;
double Buffer3;
double Buffer4;
double Buffer5;
double pivotRangeHigh;
double pivotRangeLow;
double pivotRangeClose;
double pivotTop=0;
double pivotBottom=0;
int init()
{
SetIndexStyle(0,DRAW_ARROW);
SetIndexArrow(0, 158);
SetIndexBuffer(0,Buffer1);
SetIndexLabel(0,"Pivot Point");
SetIndexStyle(1,DRAW_ARROW);
SetIndexArrow(1, 217);
SetIndexBuffer(1,Buffer2);
SetIndexLabel(1,"Pivot Range Top");
SetIndexStyle(2,DRAW_ARROW);
SetIndexArrow(2, 218);
SetIndexBuffer(2,Buffer3);
SetIndexLabel(2,"Pivot Range Bottom");
SetIndexStyle(3,DRAW_ARROW);
SetIndexArrow(3, 221);
SetIndexBuffer(3,Buffer4);
SetIndexLabel(3,"Previous Day High");
SetIndexStyle(4,DRAW_ARROW);
SetIndexArrow(4, 222);
SetIndexBuffer(4,Buffer5);
SetIndexLabel(4,"Previous Day Low");
return(0);
}
int deinit()
{
return(0);
}
int start()
{
string barTime="", lastBarTime="";
int openBar, closeBar;
for(int i=Bars; i>=0; i--)
{
barTime = TimeToStr(Time, TIME_MINUTES);
lastBarTime = TimeToStr(Time[i+1], TIME_MINUTES);
if (barTime>=PivotRangeEnd && lastBarTime0)
{
calculatePivotRangeValues(openBar, closeBar);
}
}
if (barTime>=PivotRangeStart && lastBarTime0)
{
drawIndicators(i);
}
}
return(0);
}
void calculatePivotRangeValues(int openBar, int closeBar)
{
pivotRangeHigh = High[Highest(NULL, 0, MODE_HIGH, (openBar - closeBar + 1), closeBar)];
pivotRangeLow = Low[Lowest(NULL, 0, MODE_LOW, (openBar - closeBar + 1), closeBar)];
pivotRangeClose = Close[closeBar];
}
void drawIndicators(int curBar)
{
double pivotPoint, pivotDiff;
if (pivotRangeHigh<=0 || pivotRangeLow <=0 || pivotRangeClose <= 0)
{
return(0);
}
pivotPoint=(pivotRangeHigh + pivotRangeLow + pivotRangeClose)/3;
pivotDiff = MathAbs(((pivotRangeHigh + pivotRangeLow)/2) - pivotPoint);
pivotTop = pivotPoint + pivotDiff;
pivotBottom = pivotPoint - pivotDiff;
if (DisplayPivotPoint) Buffer1[curBar]=pivotPoint;
Buffer2[curBar]=pivotTop;
Buffer3[curBar]=pivotBottom;
if (DisplayPreviousHighLow)
{
Buffer4[curBar]=pivotRangeHigh;
Buffer5[curBar]=pivotRangeLow;
}
有程序怎么才能运行?最好能贴图.谢谢!
[ 本帖最后由 stone8000 于 2005-10-24 20:24 编辑 ]
发表于:2005-10-25 00:39只看该作者
2楼
可运行的程序?你是不是问怎么导入到mt里?
遇到矛盾 先站在对方的立场上想想问题,先试着去理解别人
● 如何使用WinMTR查询平台连接流畅度
发表于:2005-10-27 04:12只看该作者
3楼
运行 tools里的mql4编辑,然后把代码复制进去
你也可以直接 按快捷键 F4进入编辑窗口