Tuyệt Chiêu AmiBroker
  • Thông báo


    + Trả lời Chủ đề
    Trang 1 của 2 1 2 CuốiCuối
    Kết quả 1 đến 20 của 81

    Hybrid View

    1. #1
      Ngày tham gia
      Oct 2009
      Bài viết
      1,925
      Được cám ơn 617 lần trong 428 bài gởi

      Mặc định

      Mình gửi thêm một công thức mà các cao thủ AmiBroker không thể thiếu trong bí kíp



      //|------------------------------------------------------------------
      //|SECTION 21 - default buy, sell, short and cover rules. They are added to the PatternExplorer signals.
      //|------------------------------------------------------------------
      def_Buy = 1;
      def_Sell = 1;
      def_Short = 1;
      def_Cover = 1;
      //|------------------------------------------------------------------


      //|------------------------------------------------------------------
      //|SECTION 22 - Use Param from Chart
      //|------------------------------------------------------------------
      // NOT all parameters are possible. Currently only sensitivity is possible.
      def_UseFromChart = 1;
      //|------------------------------------------------------------------


      //-------------------------------------------------------------------------------------------------------------------------------------
      //SECTION 23 - Add custom code before PatternExplorer code.
      //-------------------------------------------------------------------------------------------------------------------------------------
      //The following code allows you to add any custom code to any tool. Just use the Formula names as displayed in the workspace.

      procedure AddCustomCodeBeforePE()
      **
      if(FormulaName == "PE - SI Relative Strength")
      **
      def_Filter = 1;//Filter set to 1 because common filter conditions are mostly not useful in the composite indicators. }
      }
      else
      if(FormulaName == "PE - SI Trend")
      **
      def_Filter = 1;//Filter set to 1 because common filter conditions are mostly not useful in the composite indicators.
      }
      else
      if(FormulaName == "PE - Candlesticks")
      **
      // AddColumn(MA(C, 5) > MA(C, 20), "MA(C, 5) > MA(C, 20)", 1.0);// Example to add a column before all the PatternExplorer columns, only in the Candlestick tool.
      // Plot(PeTaio(), "PeTaio", colorBlue, 1+styleOwnScale, -100, 100);//Example to overlay the TAIO indicator over the Price Chart in the Candlestick tool.
      }
      else
      **
      // do anything
      }
      }
      //-------------------------------------------------------------------------------------------------------------------------------------


      // -------------------------------------------------------------------------------------------------------------------------------------
      // SECTION 24 - Add custom code after PatternExplorer code.
      // -------------------------------------------------------------------------------------------------------------------------------------
      procedure AddCustomCodeAfterPE()
      **
      if(FormulaName == "PE - Alert 1 - Price")
      **
      // AddColumn(H == HHV(H, 20), "H == HHV(H, 20)", 1.0);// Example to add a column after PatternExplorer columns in PE - Alert 1 - Price.
      }
      // AddColumn(RSI() < 30, "RSI() < 30");// Example to add a column after PatternExplorer columns in all tools.
      }
      //-------------------------------------------------------------------------------------------------------------------------------------


      //V3 - End of settings - Caution: Never change or remove this line !

    2. Những thành viên sau đã cám ơn :
      tronghoangfi (04-10-2012)

    3. #2
      Ngày tham gia
      Aug 2010
      Bài viết
      648
      Được cám ơn 325 lần trong 218 bài gởi

      Mặc định

      Cái hệ thống phân tích kỹ thuật này xài thế nào vậy bác. Chứ code trong AmiBroker không em không hiểu nổi

      Bác có cái nào tương tự trong MetaStock không

    4. #3
      Ngày tham gia
      Oct 2009
      Bài viết
      1,925
      Được cám ơn 617 lần trong 428 bài gởi

      Mặc định

      Trích dẫn Gửi bởi tradingpro8x Xem bài viết
      Cái hệ thống phân tích kỹ thuật này xài thế nào vậy bác. Chứ code trong AmiBroker không em không hiểu nổi

      Bác có cái nào tương tự trong MetaStock không
      Không có bác ạ. Đâu phải cái nào cũng có đồng thời trong hai phần mềm phân tích kỹ thuật đâu. Tùy cái chứ

    5. #4
      Ngày tham gia
      Aug 2010
      Bài viết
      648
      Được cám ơn 325 lần trong 218 bài gởi

      Mặc định

      Căng nhỉ em toàn phân tích kỹ thuật trên Metastock thôi

    6. #5
      Ngày tham gia
      Oct 2003
      Bài viết
      365
      Được cám ơn 215 lần trong 148 bài gởi

      Mặc định

      Thế là bác bị bất lợi rùi. Dân phân tích kỹ thuật đỉnh là phải xài cả hai cùng lúc

      Em gửi các bác một chỉ báo mới này. Cái này xài cho AmiBroker nhé

      SetChartOptions(0,chartShowArrows|chartShowDates);
      _SECTION_BEGIN("Vol-bands");
      Vf=Param("V-b Values",0.0146,-0.0001,0.1,0.0001);
      P1 = ValueWhen(TimeNum() == 095500, Open);
      T0 = P1+(P1*0.25*Vf);
      B0 = P1-(P1*0.25*Vf);
      T1 = P1+(P1*0.5*Vf);
      B1 = P1-(P1*0.5*Vf);
      T2 = P1+(P1*1*Vf);
      B2 = P1-(P1*1*Vf);
      T3 = P1+(P1*1.28*Vf);
      B3 = P1-(P1*1.28*Vf);
      T4 = P1+(P1*1.5*Vf);
      B4 = P1-(P1*1.5*Vf);
      T5 = P1+(P1*2*Vf);
      B5 = P1-(P1*2*Vf);
      T6 = P1+(P1*2.5*Vf);
      B6 = P1-(P1*2.5*Vf);
      T7 = P1+(P1*3*Vf);
      B7 = P1-(P1*3*Vf);

      hts = Param ("Text Shift", -55,-150,150,1);
      numbars = LastValue(Cum(Status("barvisible")));
      fraction= IIf(StrRight(Name(),3) == "", 3.2, 3.2);
      Today = LastValue(Day()) ;
      starttime = ParamTime( "Start Time", "09:55" );
      endtime = ParamTime( "End Time", "10:00" );
      tn = TimeNum();
      timecond = tn >= starttime AND tn <= endtime;
      firstBarOfDay = timecond ;
      firstBarOfDay = firstBarOfDay - Ref( firstBarOfDay, -1 );
      Cb=ParamToggle("0.25 ","NO|YES",1);
      Cb1=ParamToggle("0.50","NO|YES",1);
      Cb2=ParamToggle("1.0 ","NO|YES",1);
      Cb3=ParamToggle("1.28","NO|YES",1);
      Cb4=ParamToggle("1.5 ","NO|YES",0);
      Cb5=ParamToggle("2.0 ","NO|YES",0);
      Cb6=ParamToggle("2.5 ","NO|YES",0);
      Cb7=ParamToggle("3.0 ","NO|YES",0);
      if(Cb==1)**
      Plot(IIf( tn > endtime , t0, Null ) ,"",7, styleLine+ styleNoLabel);
      PlotText("0.25= " + WriteVal(T0,fraction),LastValue(BarIndex())-(numbars/hts),LastValue (T0,1) , 2);
      Plot(IIf( tn > endtime , b0, Null ),"",7, styleLine+ styleNoLabel);
      PlotText("0.25= " + WriteVal(B0,fraction),LastValue(BarIndex())-(numbars/hts),LastValue (B0,1) , 2);
      }if(Cb1==1)**
      Plot(IIf( tn > endtime , t1, Null ),"",48, styleDashed+ styleNoLabel);
      PlotText("0.50= " + WriteVal(T1,fraction),LastValue(BarIndex())-(numbars/hts),LastValue (T1,1) , 2);
      Plot(IIf( tn > endtime , b1, Null ),"",48, styleDashed+ styleNoLabel);
      PlotText("0.50= " + WriteVal(B1,fraction),LastValue(BarIndex())-(numbars/hts),LastValue (B1,1) , 2);
      }if(Cb2==1)**
      Plot(IIf( tn > endtime , t2, Null ),"",3, styleLine+ styleNoLabel);
      PlotText("1.00= " + WriteVal(T2,fraction),LastValue(BarIndex())-(numbars/hts),LastValue (T2,1) , 2);
      Plot(IIf( tn > endtime , b2, Null ),"",3, styleLine+ styleNoLabel);
      PlotText("1.00= " + WriteVal(B2,fraction),LastValue(BarIndex())-(numbars/hts),LastValue (B2,1) ,2);
      }if(Cb3==1)**
      Plot(IIf( tn > endtime , t3, Null ),"",51, styleDashed+ styleNoLabel);
      PlotText("1.28= " + WriteVal(T3,fraction),LastValue(BarIndex())-(numbars/hts),LastValue (T3,1) , 2);
      Plot(IIf( tn > endtime , b3, Null ),"",51, styleDashed+ styleNoLabel);
      PlotText("1.28= " + WriteVal(B3,fraction),LastValue(BarIndex())-(numbars/hts),LastValue (B3,1) , 2);
      }if(Cb4==1)**
      Plot(IIf( tn > endtime , t4, Null ),"",5, styleDashed+ styleNoLabel);
      PlotText("1.50= " + WriteVal(T4,fraction),LastValue(BarIndex())-(numbars/hts),LastValue (T4,1) , 2);
      Plot(IIf( tn > endtime , b4, Null ),"",5, styleDashed+ styleNoLabel);
      PlotText("1.50= " + WriteVal(B4,fraction),LastValue(BarIndex())-(numbars/hts),LastValue (B4,1) , 2);
      }if(Cb5==1)**
      Plot(IIf( tn > endtime , t5, Null ),"",4, styleDashed+ styleNoLabel);
      PlotText("2.00= " + WriteVal(T5,fraction),LastValue(BarIndex())-(numbars/hts),LastValue (T5,1) , 2);
      Plot(IIf( tn > endtime , b5, Null ),"",4, styleDashed+ styleNoLabel);
      PlotText("2.00= " + WriteVal(B5,fraction),LastValue(BarIndex())-(numbars/hts),LastValue (B5,1) , 2);
      }if(Cb6==1)**
      Plot(IIf( tn > endtime , t6, Null ), "",47, styleDashed+ styleNoLabel);
      PlotText("2.50= " + WriteVal(T6,fraction),LastValue(BarIndex())-(numbars/hts),LastValue (T6,1) , 2);
      Plot(IIf( tn > endtime , b6, Null ),"",47, styleDashed+ styleNoLabel);
      PlotText("2.50= " + WriteVal(B6,fraction),LastValue(BarIndex())-(numbars/hts),LastValue (B6,1) , 2);
      }if(Cb7==1)**
      Plot( T7,"", colorLightBlue, 1|styleNoLabel );
      Plot( B7,"", colorLightBlue, 1|styleNoLabel );}



      Plot(Close, "Price", 47, styleCandle );
      up= tn > endtime AND((Cross(Close,t0)OR Cross(Close,t1)OR Cross(Close,t2) OR Cross(Close,t3)OR Cross(Close,t4)OR Cross(Close,t5)OR Cross(Close,t6) OR Cross(Close,t7)
      OR Cross(Close,b0) OR Cross(Close,b1) OR Cross(Close,b2) OR Cross(Close,b3) OR Cross(Close,b4) OR Cross(Close,b5) OR Cross(Close,b6) OR Cross(Close,b7)));
      dn=tn > endtime AND ((Cross(b0,Close)OR Cross( b1,Close)OR Cross( b2,Close)OR Cross(b3,Close)OR Cross( b4,Close)OR Cross( b5,Close) OR Cross( b6,Close) OR Cross( b7,Close)
      OR Cross(t0,Close)OR Cross( t1,Close)OR Cross( t2,Close)OR Cross(t3,Close)OR Cross( t4,Close)OR Cross( t5,Close)OR Cross( t6,Close)OR Cross( t7,Close)));

      Cb7=ParamToggle("Alerts","NO|YES" ,0);if(Cb7==1)**
      PlotShapes( IIf( up, shapeUpArrow, shapeNone ),10,0,L,-20 );
      PlotShapes( IIf( dn, shapeDownArrow, shapeNone ),13,0,H,-20 );}
      //------------------------------------------------------------
      HaC=(O+H+L+C)/4;
      pab=tn > endtime AND (Cross(HaC,t0)OR Cross(Hac,b0));
      pb= tn > endtime AND (Cross(HaC,t1) OR Cross(Hac,b1));
      pb1=tn > endtime AND (Cross(HaC,t2) OR Cross(Hac,b2));
      pb2=tn > endtime AND (Cross(HaC,t3) OR Cross(Hac,b3)) ;
      pb3=tn > endtime AND (Cross(HaC,t4) OR Cross(Hac,b4));
      pb4=tn > endtime AND (Cross(HaC,t5)OR Cross(Hac,b5));
      pb5=tn > endtime AND (Cross(HaC,t6)OR Cross(Hac,b6));
      pb6=tn > endtime AND (Cross(HaC,t7)OR Cross(Hac,b7));

      pas=tn > endtime AND (Cross(b0,HaC)OR Cross(t0,HaC));
      ps= tn > endtime AND (Cross( b1,HaC)OR Cross( t1,HaC));
      ps1=tn > endtime AND (Cross( b2,HaC)OR Cross( t2,HaC));
      ps2=tn > endtime AND (Cross(b3,HaC)OR Cross(t3,HaC));
      ps3=tn > endtime AND (Cross( b4,HaC)OR Cross( t4,HaC));
      ps4=tn > endtime AND (Cross( b5,HaC)OR Cross( t5,HaC));
      ps5=tn > endtime AND (Cross( b6,HaC)OR Cross( t6,HaC));
      ps6=tn > endtime AND (Cross( b7,HaC)OR Cross( t7,HaC));

      PlotP = ParamToggle("Plot Shapes","Off,On",0);
      //P1Shape = Param("buy Shape Typ",35,0,50,1);
      //P2Shape = Param("sell Shape Typ",36,0,50,1);
      if(PlotP)**
      PlotShapes(IIf(pab,shapeDigit1,shapeNone),colorAqu a,0,L,-10 );
      PlotShapes(IIf(pas,shapeDigit1,shapeNone),colorCus tom2,0,H,10 );
      PlotShapes(IIf(pb,shapeDigit2,shapeNone),colorLime ,0,L,-10 );
      PlotShapes(IIf(ps,shapeDigit2,shapeNone),colorOran ge,0,H,10 );
      PlotShapes(IIf(pb1,shapeDigit3,shapeNone),2,0,L,-10 );
      PlotShapes(IIf(ps1,shapeDigit3,shapeNone),13,0,H,1 0 );
      PlotShapes(IIf(pb2,shapeDigit4,shapeNone),6,0,L,-10 );
      PlotShapes(IIf(ps2,shapeDigit4,shapeNone),31,0,H,1 0 );
      PlotShapes(IIf(pb3,shapeDigit5,shapeNone),5,0,L,-10 );
      PlotShapes(IIf(ps3,shapeDigit5,shapeNone),4,0,H,10 );
      PlotShapes(IIf(pb4,shapeDigit6,shapeNone),5,0,L,-10 );
      PlotShapes(IIf(ps4,shapeDigit6,shapeNone),4,0,H,10 );
      PlotShapes(IIf(pb5,shapeDigit7,shapeNone),5,0,L,-10 );
      PlotShapes(IIf(ps5,shapeDigit7,shapeNone),4,0,H,10 );
      PlotShapes(IIf(pb6,shapeDigit8,shapeNone),5,0,L,-10 );
      PlotShapes(IIf(ps6,shapeDigit8,shapeNone),4,0,H,10 );
      }
      Title = EncodeColor(colorWhite)+ "Volatility-Bands stocks" + " - " + Name() + " - " + EncodeColor(colorRed)+ Interval(2) + EncodeColor(colorWhite) +
      " - " + Date() +" - "+"\n" +EncodeColor(colorYellow) +"Op-"+O+" "+"Hi-"+H+" "+"Lo-"+L+" "+
      "Cl-"+C+" "+ "Vol= "+ WriteVal(V);
      _SECTION_END();
      _SECTION_BEGIN("Background text");
      C11=ParamColor("up panel",colorDarkOliveGreen );
      C12=ParamColor("dn panel",colorDarkGrey );
      C13=Param("fonts",20,10,30,1 );
      C14=Param("left-right",2.1,1.0,5.0,0.1 );
      C15=Param("up-down",12,1,20,1 );
      Miny = Status("axisminy");
      Maxy = Status("axismaxy");
      lvb = Status("lastvisiblebar");
      fvb = Status("firstvisiblebar");
      pxwidth = Status("pxwidth");
      pxheight = Status("pxheight");
      GfxSetBkMode( 0 );
      GfxSetOverlayMode(1);
      GfxGradientRect(0,0,pxwidth, pxheight, C11, C12 );
      GfxSelectFont("Tahoma", Status("pxheight")/C13 );
      GfxSetTextAlign( 6 );
      GfxTextOut( Name(), Status("pxwidth")/C14, Status("pxheight")/C15 );
      GfxSelectFont("Tahoma", Status("pxheight")/C13*0.5 );
      GfxTextOut( "Volatility Bands - stocks", Status("pxwidth")/C14, Status("pxheight")/C15*2.5 );
      GfxSelectFont("Tahoma", Status("pxheight")/C13*0.5 );
      GfxTextOut( " www.TAtechnics.in", Status("pxwidth")/C14, Status("pxheight")/C15*4 );
      _SECTION_END();
      NewDay = Day() != Ref( Day(), -1 );
      DailyBarNum = BarsSince( NewDay ) + 1;
      DBN = DailyBarNum <= 1;
      Plot( DBN, "Day Seprator", 31, styleHistogram| styleOwnScale | styleNoLabel);

    7. Những thành viên sau đã cám ơn :
      tronghoangfi (04-10-2012)

    8. #6
      Ngày tham gia
      Oct 2009
      Bài viết
      1,925
      Được cám ơn 617 lần trong 428 bài gởi

      Mặc định

      Cái công thức của bác dài thế kia thì ngay cả dân phân tích kỹ thuật chuyên nghiệp cũng khiếp vía đấy

    9. #7
      Ngày tham gia
      Oct 2009
      Bài viết
      1,925
      Được cám ơn 617 lần trong 428 bài gởi

      Mặc định

      Mình nghĩ công thức dài ngắn không quan trọng chủ yếu là phải đáp ứng hai tiêu chuẩn:

      - Thứ nhất, tỷ lệ chính xác phải tương đối

      - Thứ hai, phải đảm bảo dễ sử dụng (chứ nếu không thì căng đấy )

    10. #8
      Ngày tham gia
      Oct 2003
      Bài viết
      365
      Được cám ơn 215 lần trong 148 bài gởi

      Mặc định Phân tích kỹ thuật - AmiBroker AFL Code

      Đây là đoạn AFL Code trong phần mềm phân tích kỹ thuật AmiBroker về một Hítogram của hai chỉ báo MA 35 và MA 5 ngày

      //histogram for long MA(35) & short MA(5) by microprocessor

      Long_MA=MA(Close,35);
      Short_MA=MA(Close,5);
      Plot(Long_MA,"",colorRed);//can omit this line
      Plot(Long_MA,"long moving avg",colorRed,styleHistogram);
      Plot(Short_MA,"",colorBlue);//can omit this line
      Plot(Short_MA,"short moving avg",colorBlue,styleHistogram);

    11. Có 3 thành viên đã cám ơn 1nightdream :
      tigeran (19-08-2013), tradingpro8x (13-08-2013), tronghoangfi (02-10-2012)

    12. #9
      Ngày tham gia
      Oct 2003
      Bài viết
      365
      Được cám ơn 215 lần trong 148 bài gởi

      Mặc định Phân tích kỹ thuật - AmiBroker AFL Code

      hai đoạn code của phần mềm phân tích kỹ thuật AmiBroker khá hay nhờ các cao thủ cho ý kiến

      Đoạn 1:

      // Zig-Hi-Zag-Lo and Zig on Close formula
      VolON = ParamToggle( \"Plot Volume\", \"Off|On\", 1 );
      ZigON = ParamToggle( \"Plot ZigHiLo\", \"Off|On\", 1 );
      pr = Param( \"ZigZag change\", 0.15, 0.01, 20, 0.01 );
      CloseORhilo = ParamToggle( \"ZigOnClose\", \"ZigOnHiLo\", 1 );

      if ( CloseORhilo == 1 )
      **
      pk = PeakBars( C, pr ) == 0;// PeakBars( H, pr ) == 0
      tr = TroughBars( C, pr ) == 0;// TroughBars( L, pr ) == 0

      zzHi = Zig( C, pr );// Zig( H, pr )
      zzLo = Zig( C, pr );// Zig( L, pr )
      Avg = ( zzHi + zzLo ) / 2;

      x = IIf( pk, zzHi, IIf( tr, zzLo, IIf( Avg > Ref( Avg, -1 ), C, C ) ) );// Ref( Avg, -1 ), H, L ) ) )
      }
      else
      **
      pk = PeakBars( H, pr ) == 0;// PeakBars( H, pr ) == 0
      tr = TroughBars( L, pr ) == 0;// TroughBars( L, pr ) == 0

      zzHi = Zig( H, pr );// Zig( H, pr )
      zzLo = Zig( L, pr );// Zig( L, pr )
      Avg = ( zzHi + zzLo ) / 2;

      x = IIf( pk, zzHi, IIf( tr, zzLo, IIf( Avg > Ref( Avg, -1 ), H, L ) ) );// Ref( Avg, -1 ), H, L ) ) )
      }

      zzHiLo = Zig( x, pr );

      zzup = zzHiLo > Ref( zzHiLo, -1 ) ;
      zzdn = zzHiLo < Ref( zzHiLo, -1 );
      ribboncol = IIf( zzup , colorWhite, colorBlack );
      Plot ( 3, \"\", ribboncol, styleArea | styleOwnScale | styleNoLabel, 0, 100 );// Plot the Zig ribbon

      if ( ZigON == 1 )
      Plot( zzHiLo, \"\", ribboncol , styleNoLabel );

      //Swing Volume
      Volswing = Sum( V, BarsSince( zzup != Ref( zzup, -1 ) ) + 1 );

      SwingBar = BarsSince( zzHiLo != Ref( zzHiLo, -1 ) );

      // plot Volume at X % from peak and trough
      percent = Param( \"PositTextVol%\", 5, 2, 90, 0.5 );

      xshift = Param( \"xshift %\", 1.5, 1, 90, 0.5 );

      yshift = Param( \"yshift %\", 5, 1, 90, 0.5 );

      Miny = Status( \"axisminy\" );

      Maxy = Status( \"axismaxy\" );

      y = Miny + ( Maxy - Miny ) * percent / 100;

      FirstVisibleBar = Status( \"FirstVisibleBar\" );

      Lastvisiblebar = Status( \"LastVisibleBar\" );

      if ( VolON == 1 )
      **
      for ( i = Firstvisiblebar + 1; i <= Lastvisiblebar AND i < BarCount - 1; i++ )
      **
      if ( zzup [i] AND zzup [ i+1] == 0 )
      **
      PlotText( \"\" + Volswing [ i] , i - xshift , H[i] + yshift , colorWhite );
      }

      if ( zzup [i] == 0 AND zzup [ i+1] == 1 )
      **
      PlotText( \"\" + Volswing [ i] , i - xshift , L[i] - yshift , colorBlack );
      }
      }

      PlotText( \"\" + Volswing , i + 2 , zzHiLo[BarCount-1], LastValue( ribboncol ) );
      }

      Đoạn 2:


      PriceAtBuy = 0;
      HighSinceBuy = 0;
      Exit = 0;

      for( i=0; i< BarCount; i++)
      **
      if(PriceAtBuy == 0 AND Buy[i])
      **
      PriceAtBuy = BuyPrice[i];
      }
      if(PriceAtBuy > 0)
      **
      HighSinceBuy = Max(High[i], HighSinceBuy);
      if(Exit == 0 AND Buy[i] AND (Close[i] < BuyPrice[i-2] ))
      **
      Sell[i] = 1;
      SellPrice[i] = Min(Open[i+1],(Close[i] < BuyPrice[i-2]));
      Buy[i] = 0;
      }
      if(Exit == 0 AND Close[i] > PriceAtBuy AND HighSinceBuy AND (Close[i] < HighSinceBuy[i-2]))
      **
      Sell[i] = 1;
      SellPrice[i] = Min(Open[i+1],(Close[i] <HighSinceBuy[i-2]));
      Buy[i] = 0;
      PriceAtBuy = 0;
      HighSinceBuy = 0;
      }
      }
      }

    13. Có 6 thành viên đã cám ơn 1nightdream :
      727235 (15-01-2013), dreamblue (11-08-2014), dxdiep (04-10-2013), tigeran (19-08-2013), tradingpro8x (13-08-2013), tronghoangfi (04-10-2012)

    14. #10
      Ngày tham gia
      Apr 2012
      Bài viết
      9
      Được cám ơn 1 lần trong 1 bài gởi

      Mặc định

      Trích dẫn Gửi bởi 1nightdream Xem bài viết
      hai đoạn code của phần mềm phân tích kỹ thuật AmiBroker khá hay nhờ các cao thủ cho ý kiến

      Đoạn 1:

      Đoạn 2:
      Bác vui lòng hướng dẫn add code này vào Ami! Em add nó báo lỗi nên không xem được. Cảm ơn bác đã chia sẻ!

    15. #11
      Ngày tham gia
      Apr 2012
      Bài viết
      9
      Được cám ơn 1 lần trong 1 bài gởi

      Mặc định

      Trích dẫn Gửi bởi 1nightdream Xem bài viết
      Thế là bác bị bất lợi rùi. Dân phân tích kỹ thuật đỉnh là phải xài cả hai cùng lúc

      Em gửi các bác một chỉ báo mới này. Cái này xài cho AmiBroker nhé

      SetChartOptions(0,chartShowArrows|chartShowDates);
      .
      .
      .
      .
      Bác vui lòng hướng dẫn add code này vào Ami! Em add nó báo lỗi nên không xem được. Cảm ơn bác đã chia sẻ!

    16. #12
      Ngày tham gia
      Oct 2009
      Bài viết
      1,925
      Được cám ơn 617 lần trong 428 bài gởi

      Mặc định Phân tích kỹ thuật - AmiBroker Code

      Đây là loạt bài về phần mềm phân tích kỹ thuật AmiBroker

      Optimization Iteration Reload (OIR) for AmiBroker

      One of the (few) notable hardships of using AmiBroker is the inability to view a single optimization iteration result in a backtest or on a chart without having to manually re-enter each of the (who knows how many ...) individual strategy parameters - once thru all of them to setup a backtest, then once thru all of them again to visualize on a chart, and then all of this all over again for every single optimization iteration you want to examine.

      CodeForTraders is very pleased to offer our solution to this chore - Optimization Iteration Reload for AmiBroker.

      What It Is
      Optimization Iteration Reload for AmiBroker is an Excel VBA application, and a process for using it, that allows you to quickly browse optimization results and choose any iteration you wish for quick, "no typing required" reloading into the AA Window parameter set or your chart parameter set.

      The only modification needed to your code is the addition of a #include line, which results in the loading of the product output.

      How It Works

      There are just a few steps involved:

      Prep your strategy code by adding the #include line
      After your optimization, do a File -> Export of the AA Window results to a .csv file
      Open the .csv file in Excel, and highlight the parameters for your chosen iteration
      Use Alt-F8 (or your own hotkey) to invoke Optimization Iteration Reload
      Return to your chart and use the Parameter Dialog reset button, or
      Return to the AA Window, use the Parameter Dialog reset button, and run a backtest
      The whole process takes mere seconds.

      What It Looks Like

      Bim, Bam, Boom - you can now easily browse any iteration of any optimization, choosing it for generation of a complete backtest report with performance graphs - NO TYPING REQUIRED !

      Take a look at how it's done:

      http://www.screencast.com/t/ajppho5f

    17. Có 2 thành viên đã cám ơn tigeran :
      tradingpro8x (13-08-2013), tronghoangfi (04-10-2012)

    18. #13
      Ngày tham gia
      Aug 2010
      Bài viết
      648
      Được cám ơn 325 lần trong 218 bài gởi

      Mặc định Kinh nghiệm phân tích kỹ thuật PTKT và đầu tư trên thị trường chứng khoán

      Mình thấy lập trình trong phần mềm phân tích kỹ thuật AmiBroker khá giống lập trình trong C+ của Microsoft. Vì vậy, ai đã biết C+ thì có thể coi là một lợi thế khi nghiên cứu

    19. Có 2 thành viên đã cám ơn tradingpro8x :
      1nightdream (16-09-2013), tigeran (27-08-2013)

    20. #14
      Ngày tham gia
      Dec 2006
      Bài viết
      38
      Được cám ơn 1 lần trong 1 bài gởi

      Mặc định

      Trích dẫn Gửi bởi tradingpro8x Xem bài viết
      Mình thấy lập trình trong phần mềm phân tích kỹ thuật AmiBroker khá giống lập trình trong C+ của Microsoft. Vì vậy, ai đã biết C+ thì có thể coi là một lợi thế khi nghiên cứu
      Đúng rồi nó gần giống C++. Mình thì hay chôm về xong coi nội dung nó viết gì thôi. Chỉ code mấy cái đơn giản thôi. 3 năm trước còn code theo yêu cầu của môi giới của mình, nhưng giờ thì lười rồi.

    21. #15
      Ngày tham gia
      Oct 2009
      Bài viết
      1,925
      Được cám ơn 617 lần trong 428 bài gởi

      Mặc định Phân tích kỹ thuật - AmiBroker

      Có cái chỉ báo phân tích kỹ thuật AmiBroker khá hay nè các bác

      Weekly Price Graph

      weeklyopen = TimeFrameGetPrice("O",inWeekly);
      weeklyhigh = TimeFrameGetPrice("H",inWeekly);
      weeklylow = TimeFrameGetPrice("L",inWeekly);
      weeklyclose = TimeFrameGetPrice("C",inWeekly);

      weeklyOpen = TimeFrameCompress( weeklyOpen, inWeekly );weeklyHigh = TimeFrameCompress( weeklyHigh, inWeekly );weeklyLow = TimeFrameCompress( weeklyLow, inWeekly );weeklyClose = TimeFrameCompress( weeklyClose, inWeekly );

      PlotOHLC(weeklyopen,weeklyhigh,weeklylow,weeklyclo se,"WEEK",colorBlack,styleCandle);

    22. Có 2 thành viên đã cám ơn tigeran :
      abasg2307 (30-11-2015), tronghoangfi (04-10-2012)

    23. #16
      Ngày tham gia
      Oct 2009
      Bài viết
      1,925
      Được cám ơn 617 lần trong 428 bài gởi

      Mặc định Kinh nghiệm phân tích kỹ thuật PTKT và đầu tư trên thị trường chứng khoán

      Là dân chuyên phân tích kỹ thuật PTKT thì cũng phải tự lập trình chứ bác, chứ chả nhẽ cứ lấy của người khác mãi coi sao được

    24. Có 3 thành viên đã cám ơn tigeran :
      1nightdream (16-09-2013), quannh (14-09-2013), tradingpro8x (23-08-2013)

    25. #17
      Ngày tham gia
      Aug 2010
      Bài viết
      648
      Được cám ơn 325 lần trong 218 bài gởi

      Mặc định

      Mình ủng hộ vụ này, lấy của người khác mãi thì không bao giờ trở thành cao thủ phân tích kỹ thuật được


    26. Những thành viên sau đã cám ơn :
      1nightdream (16-09-2013)

    27. #18
      Ngày tham gia
      Oct 2003
      Bài viết
      365
      Được cám ơn 215 lần trong 148 bài gởi

      Mặc định PTKT - Tuyệt Chiêu AmiBroker

      THật ra mình thấy cũng không cần quá nhiều "tuyệt chiêu" làm gì. Cứ mấy cái Template của AmiBroker là xài mệt nghỉ rùi

    28. Có 2 thành viên đã cám ơn 1nightdream :
      abasg2307 (30-11-2015), tradingpro8x (13-08-2013)

    29. #19
      Ngày tham gia
      Oct 2003
      Bài viết
      365
      Được cám ơn 215 lần trong 148 bài gởi

      Mặc định Kinh nghiệm phân tích kỹ thuật PTKT chứng khoán bằng AmiBroker

      Kinh nghiệm phân tích kỹ thuật của mình thì nên xài Cách 3 cho khỏe
      Cuộc đời tàn nhẫn nuôi anh lớn
      Xã hội khốn nạn dạy anh khôn

    30. Có 3 thành viên đã cám ơn 1nightdream :
      quannh (14-09-2013), tigeran (19-08-2013), tradingpro8x (23-08-2013)

    31. #20
      Ngày tham gia
      Dec 2006
      Bài viết
      38
      Được cám ơn 1 lần trong 1 bài gởi

      Mặc định

      Trích dẫn Gửi bởi 1nightdream Xem bài viết
      Kinh nghiệm phân tích kỹ thuật của mình thì nên xài Cách 3 cho khỏe
      Đúng là cách 3 là khỏe nhất

    Thông tin của chủ đề

    Users Browsing this Thread

    Có 1 thành viên đang xem chủ đề này. (0 thành viên và 1 khách vãng lai)

       

    Similar Threads

    1. Tuyệt chiêu trong MetaStock
      By tigeran in forum Phân tích kỹ thuật MetaStock
      Trả lời: 12
      Bài viết cuối: 03-03-2011, 08:53 AM
    2. Tóm tắt buổi tọa đàm chiều 14.11 tại 59C Nguyễn Đình Chiểu
      By luxubu50 in forum Nhận định Thị trường
      Trả lời: 0
      Bài viết cuối: 15-11-2009, 10:30 AM

    Bookmarks

    Quyền viết bài

    • Bạn Không thể gửi Chủ đề mới
    • Bạn Không thể Gửi trả lời
    • Bạn Không thể Gửi file đính kèm
    • Bạn Không thể Sửa bài viết của mình