交易屏幕

Discussion in 'AmiBroker' started by Stanwell, Jan 27, 2012.

  1. 拿到下面的java script来截取交易屏幕,但我运行时出错,请帮助测试一下,谢谢。


    var oAB = WScript.CreateObject("Broker.Application");
    Ticker = oAB.ActiveDocument.Name;


    location = "TipsterTrendlines\\";

    rightNow = new Date();

    fileName = /*location +*/
    rightNow.getFullYear() + "-" +
    (rightNow.getMonth() + 1) + "-" +
    rightNow.getDate() + " (" +
    rightNow.getHours() + "-" +
    rightNow.getMinutes() + "-" +
    rightNow.getSeconds() + ") " + Ticker +
    ".png";



    AB = new ActiveXObject("Broker.Application");
    Win = AB.ActiveWindow;
    Win.ExportImage(fileName, 1024, 768 );

    其中
    location = "TipsterTrendlines\\";
    可以是自己指定的位置。
     
  2. 还没试过,不过这个代码如果在amibroker外面单独能使用吗?
    是否可以考虑让ab去执行一个外面.bat类似的文件执行?
     
  3. 这个倒没有考虑过。我是把这个文件存到AB的script文件夹,然后从AB的Tools->Customize->Tools->New找到这个文件。一运行就出错。
     
  4. We use Amibroker

    How about this one?
    Re: Run ExportImage from Amibroker
    ----------------------------------------------------------------------------------------

    我写了一段AutoIt3的代码,觉得效果还不错,就糊了上来。
    使用时需要先用AutoIt3编译成一个执行文件。
    注意要启动Amibroker,不然报错。

    Code:
    ;
    ; Amibroker Automation
    ; by cdf@hylt.                 Jan 28, 2012
    ;
    #include-once
    #include <Date.au3>
    
    
    _Main()
    
    Func _Main()
    	Local $TimeStr = @Year&"-"&@Mon&"-"&@MDAY&"("&@HOUR&"_"&@MIN&"_"&@SEC&")"
    	Local $pathname = "C:\TEMP\AMBTEMP\"  ;在这儿指定生成文件的位置
    
    	$AB = ObjCreate("Broker.Application")	; Create an Amibroker Object
    
    	if @error then 
    		Msgbox (0,"AmibrokerAuto","Error creating the Amibroker Object. Error code: " & @error)
    	endif
    
    	$Ticker = $AB.ActiveDocument.Name;
    	$CurrentWin = $AB.ActiveWindow;
    	
    ;	$filename=$pathname&$Ticker&" "&$TimeStr&".PNG"
    	$filename=$pathname&$TimeStr&"  "&$Ticker&".png"  ;2012-01-28(10_09_44)  HSI G2-HKF.png
    	
    	$CurrentWin.ExportImage($filename, 1024, 768 );
    EndFunc   ;==>_Main
     
  5.  
  6. 在做Bar Replay的时候,这个ScreenCapture是有用的。
    ---------
    从Stanwell兄那儿学到了不少东西,谢谢:p
     
  7. 没想到过BarReplay用到它,还是和你学习了,别客气:)
    另外我把我的交易计划的核心做成一个menu, 每次下单前看一下。
     
  8. cdf的代码运行时也发现同样问题,经过查询,找到症结了。

    当在一个空白tab打开一个AFL时,应该从Charts菜单里选中那个AFL,然后拽到tab,而不是双击。如果是双击,这个AFL只是tab的一部分而不是全部,该tab还有一个空白区没有定义Chart ID,导致出错。

    我用ShellExecute调用这个截屏功能,行了:D
     
  9. 要是作者能把帮助文件汉化成中文版,可以详细的对她进行了解就好了,估计用户会增长一大批
     
  10. 这个难度较大。AB的用户手册是几个活跃用户帮着编的,TJ自己只写了一部分。汉化帮助文件后能增加许多D版用户,正版不会增加太多。