从X到当前时间计算条形的最简单方法? - Page 2
2 頁面的第 842 頁 FirstFirst 12
Results 11 to 18 of 18

Thread: 从X到当前时间计算条形的最简单方法?

  1. #11

    Quote Originally Posted by ;
    试试这个,看看视觉效果是否有帮助
    谢谢。这实际上更接近我试图完成的事情。对于DH和DL来说,这正是我试图做的事情,但它使得剩下的线路变得更难。我在你所做的一切中添加了几行代码。您可能会看到我尝试通过代码执行的操作,我一直试图在DL上方三分之一和DH下三分之一处包含并发线,三分之一是任意的,可能是一半甚至四分之一或全部。并发和准确是秘密。我能够在三分之一的时间间隔中完全按照我的想法绘制一些线条,但我的数学或逻辑是远离的。我在下面添加了代码和附加缓冲区。我在这里做错了什么?插入代码为(int I = rates_total-fmax(prev_calculated,1); igt; = 0; I--)datetime午夜=时间#91; I#93 ;-(时间#91; I#93;%86400); int change = iBarShift(NULL,0,midnight),cnt = shift-i 1,indexHigh = iHighest(NULL,0,MODE_HIGH,cnt,I),indexLow = iLowest(NULL,0,MODE_LOW,cnt,I), indexU3 = indexHigh - ((indexHigh-indexLow)/3),indexL3 = indexLow ((indexHigh-indexLow)/3); dayHighNumber 91; I#93; = High#91; indexHigh#93 ;; dayLow#91; I#93; =低#91;#indexLow 93 ;; dayU3#91; I#93; =结束#91; indexU3#93 ;; dayL3#91; I#93; =结束#91; indexL3#93 ;;

  2. #12

    Quote Originally Posted by ;
    引用谢谢。这实际上更接近我试图完成的事情。对于你的DH和DL来说,这正是我试图做的事情,但它使其余的线路变得更难。我在你所做的事情中加入了几行代码。您可能会看到我一直希望对代码执行的操作,我一直试图在DL上方三分之一处添加并发线,在DH下三分之一,三分之一是随机的,可能是一半甚至四分之一或全部。并行和准确是你的秘密。我设法让它在我认为只有三分之一的地方划出一些线条......
    你试图用高和低的指数计算第三个,而不是高和低的指数。插入的代码#property严格#property indior_chart_window #property indior_buffers 4 dual dayHigh#91;#93;,dayLow#91;#93;,upper3#91;#93;,lower3#91;#93 ;; int OnInit()SetIndexBuffer(0,dayHigh); SetIndexBuffer(1,dayLow); SetIndexBuffer(2,upper3); SetIndexBuffer(3,lower3); SetIndexStyle(0,DRAW_LINE,STYLE_SOLID); SetIndexStyle(1,DRAW_LINE,STYLE_SOLID); SetIndexStyle(2,DRAW_LINE,STYLE_DASH); SetIndexStyle(3,DRAW_LINE,STYLE_DASH);返回(INIT_SUCCEEDED); int OnCalculate(const int rates_total,const int prev_calculated,const datetime time#91;#93;,const double open#91;#93;,const double top#91;#93;,const double non#91;#93; ,const double close#91;#93;,const long tick_volume#91;#93;,const long volume#91;#93;,const int spread#91;#93; -RRB- for(int I = rates_total- fmax(prev_calculated,1); igt; = 0; I--)datetime午夜=时间#91;我#93 ;-(时间#91;我#93;%86400); int shift = iBarShift(NULL,0,午夜),cnt = shift-i 1,indexHigh = iHighest(NULL,0,MODE_HIGH,cnt,I),indexLow = iLowest(NULL,0,MODE_LOW,cnt,I); dayHighNumber 91; I#93; = large #91; indexHigh#93 ;; dayLow#91; I#93; =低#91; indexLow#93 ;;双范围=(dayHigh#91; I#93; -dayLow#91; I#93; -RRB-3; upper3#91;我#93; = dayHigh#91;我#93; - 范围; lower3#91; I#93; = dayLow#[我#93; 范围;返回(rates_total);

  3. #13

    Quote Originally Posted by ;
    引用你试图用高和低的指数计算第三个,而不是低和高的值
    谢谢你。在您发布新示例之前,我使用了以下代码。得到它...插入代码dayU3#91;我#93; = dayHigh#91; I#93; - LRB-(dayHigh#91; I#93; -dayLow#91; I#93; -RRB-3); dayL3#91; I#93; = dayLow#91;我#93; ((dayHigh#91; I#93; -dayLow#91; I#93; -RRB-3);

  4. #14
    Quote Originally Posted by ;
    引用谢谢你。在完成提交新案例之前,我使用了以下代码。得到它... dayU3 [I] = dayHigh [I] - ((dayHigh [I] -dayLow [I])/3); dayL3 [I] = dayLow [I] ((dayHigh [I] -dayLow [I])/3);

  5. #15
    我一直试图在视觉效果中加入3行,并且取得了一些小小的成功。 #1。好的 - 我已经包括:dayOpen [I] =打开[更改];它按计划在每个会话期间使用并发线路显示会话的接受性。 #2。不行 - 我也试图将昨天接近今天的这个组合包括在内,并且每天前一天的收盘也在接近第二天。 #3。如果我可以添加#2,那么我甚至可以添加((昨天收盘 今天开盘)/2)作为下一个额外线。 #2和#3比我想象的更具挑战性。我今天能够得到昨天的近线,但我不能让它适当改变,所以我假设的问题是在索引设置。 DayPrevClose [I] =关闭[shift 1];没有按计划运行和dayPrevClose [I] =关闭[更改]拉动当天第一个酒吧的收盘价。我怎样才能实现这一目标,以便在今天的日内数据中得出前一天的收盘价并进行适当调整?

  6. #16

    Quote Originally Posted by ;
    我一直试图在视觉效果上增加3行,但只取得了一些小小的成功。 #1。好的 - 我已经包括:dayOpen = Open [shift];它按计划运行,每个会话都有并发行,显示会话已打开。 #2。不行 - 我也试图在昨天接近这个混合物附近添加,并且前一天的收盘也吸引了第二天。 #3。如果我可以获得额外的#2,那么我甚至可以添加((昨天收盘 今天开盘)/2)作为下一个额外线。 #2和#3比我想象的更具挑战性。我可以得到昨天的......
    我设想你的专家日志上有一个数组超出范围的错误消息(如果更改当前是图表中最旧的条,你不能添加它)插入的代码#property stringent #property indior_chart_window #property indior_buffers 7 double dayHighNumber 91; #93;,dayLowNumber 91;#93;,upper3#91;#93;,lower3#91;#93;,dayOpen#91;#93;,prevClose#91;#93;,closeopen2#91;#93; ; int OnInit()SetIndexBuffer(0,dayHigh); SetIndexBuffer(1,dayLow); SetIndexBuffer(2,upper3); SetIndexBuffer(3,lower3); SetIndexBuffer(4,dayOpen); SetIndexBuffer(5,prevClose); SetIndexBuffer(6,closeopen2); SetIndexStyle(0,DRAW_LINE,STYLE_SOLID); SetIndexStyle(1,DRAW_LINE,STYLE_SOLID); SetIndexStyle(二,DRAW_LINE,STYLE_DASH); SetIndexStyle(3,DRAW_LINE,STYLE_DASH); SetIndexStyle(4,DRAW_LINE,STYLE_SOLID); SetIndexStyle(5,DRAW_LINE,STYLE_SOLID); SetIndexStyle(6,DRAW_LINE,STYLE_DOT);收益率(INIT_SUCCEEDED); int OnCalculate(const int rates_total,const int prev_calculated,const datetime time#91;#93;,const double open#91;#93;,const double high#91;#93;,const double non#91;#93; ,const double close#91;#93;,const long tick_volume#91;#93;,const long volume#91;#93;,const int disperse#91;#93; -RRB- for(int I = rates_total- fmax(prev_calculated,1); igt; = 0; I--)datetime午夜=时间#91;我#93 ;-(时间#91;我#93;%86400); int change = iBarShift(NULL,0,午夜),cnt = shift-i 1,indexHigh = iHighest(NULL,0,MODE_HIGH,cnt,I),indexLow = iLowest(NULL,0,MODE_LOW,cnt,I); dayHighNumber 91; I#93; =高#91; indexHigh#93 ;; dayLow#91; I#93; = Low#91; indexLow#93 ;; double range =(dayHigh#91; I#93; -dayLow#91; I#93; -RRB- &3; upper3#91;我#93; = dayHigh#91;我#93; - 范围; lower3#91; I#93; = dayLow#91;我#93; 范围; dayOpen#91; I#93; =打开#91;转移#93 ;;移位 ;应该(shiftgt; = rates_total)继续; prevClose#91; I#93; =关闭#91;转移#93 ;; closeopen2#91;我#93; =(dayOpen#91; I#93; prevClose#91; I#93; -RRB-2; yield(rates_total);

  7. #17

    Quote Originally Posted by ;
    引用我想你在Pros日志上收到一个超出范围的数组错误消息(如果shift是当前图表中最旧的条,你不能添加它)shift ; if(shiftgt; = rates_total)继续; prevClose [I] =打开[shift]; closeopen2 [I] =(dayOpen [I] prevClose [I])/2; } return(rates_total); }
    本来不会想出额外的转变 。谢谢。你非常擅长编码。我见过你的很多很紧凑有效且非常符合逻辑。我做了一点改动...... prevClose [I] =打开[shift];改为prevClose [I] =关闭[shift];似乎完美无瑕。

  8. #18
    Quote Originally Posted by ;
    {quote {}会|}'}}从来没有想过额外的班次 。谢谢。你的编码非常好。我见过很多代码,你的代码很紧凑有效且非常符合逻辑。我做了一点修改...... prevClose [I] =打开[shift];改为prevClose [I] =关闭[shift];看起来功能完美无缺。
    打开/关闭的好地方
    ......一定是早上太早开始编程
    我很高兴你已经开始工作了

發布權限

  • 您不可發布新主題
  • 您不可回复
  • 您不可發布附件
  • 您不可編輯您的帖子
  •  
  • BB代碼是打開的
  • 表情符號是打開的
  • [IMG]代碼是打開的
  • [視頻]代碼是打開的
  • HTML代碼是關閉的
forexidol網站使用cookie 文字跟蹤
forexidol網站使用cookie 文字跟蹤,某些設定已經固定。您可以點擊此處閱讀我們的Cookie使用說明。 請點擊右鍵接受我們的cookies。如果您選擇繼續使用forexidol網站,我們將認為您接受我們的cookies。