实现效果的脚本文件部分

| 发表于 2020-7-26 15:30:23 | 显示全部楼层 |复制链接
  1. void OnStart()
  2.   {
  3. if(InpDate<0 || InpDate>100 || InpPrice<0 || InpPrice>100)
  4.      {
  5. return;
  6.      }
  7. int bars=(int)ChartGetInteger(0,CHART_VISIBLE_BARS);
  8. int accuracy=1000;
  9. datetime date[];
  10.    double   price[];
  11. ArrayResize(date,bars);
  12.    ArrayResize(price,accuracy);
  13. ResetLastError();
  14.    if(CopyTime(Symbol(),Period(),0,bars,date)==-1)
  15.      {
  16. return;
  17.      }
  18. double max_price=ChartGetDouble(0,CHART_PRICE_MAX);
  19.    double min_price=ChartGetDouble(0,CHART_PRICE_MIN);
  20. double step=(max_price-min_price)/accuracy;
  21.    for(int i=0;i<accuracy;i++)
  22.       price[i]=min_price+i*step;
  23. int d=InpDate*(bars-1)/100;
  24.    int p=InpPrice*(accuracy-1)/100;
  25. if(!ArrowLeftPriceCreate(0,InpName,0,date[d],price[p],InpColor,
  26.       InpStyle,InpWidth,InpBack,InpSelection,InpHidden,InpZOrder))
  27.      {
  28.       return;
  29.      }
  30. ChartRedraw();
  31.    Sleep(1000);
  32. int v_steps=accuracy*4/5;
  33. for(int i=0;i<v_steps;i++)
  34.      {
  35. if(p<accuracy-1)
  36.          p+=1;
  37. if(!ArrowLeftPriceMove(0,InpName,date[d],price[p]))
  38.          return;
  39. if(IsStopped())
  40.          return;
  41. ChartRedraw();
  42.      }
  43. Sleep(1000);
  44. ArrowLeftPriceDelete(0,InpName);
  45.    ChartRedraw();
  46. Sleep(1000);
  47. }
复制代码
最近访问 头像模式
举报

评论 使用道具

下一篇 : 写入文件
发新帖
EA交易
您需要登录后才可以评论 登录 | 立即注册