COCO研究院

 找回密碼
 註冊
搜索
12
返回列表 發新帖
樓主: yanhai257

每次根据buy规则只买一只股票,请问code怎么写?

[複製鏈接]
 樓主| 發表於 16-2-2 09:52 | 顯示全部樓層
代码我已经想出来了,如下:
SetCustomBacktestProc("");
if(Status("action") == actionPortfolio)
{
   bo = GetBacktesterObject();
   bo.PreProcess();           
   for (i= 0; i < BarCount; i++)
   {  
      MinPctProfit = 100; //open position中某个position的最小浮盈,初始值
      HaveOpenPos = 0; //是否持有position,初始值
      for (trade = bo.GetFirstOpenPos(); trade; trade = bo.GetNextOpenPos())
      {
         MinPctProfit = Min(trade.GetPercentProfit, MinPctProfit);  //求最小浮盈
         HaveOpenPos = Max(trade.GetEntryValue, HaveOpenPos);  //求某个position的最大成本值,以此判断是否持有position。本来打算用bo.GetOpenPosQty()来判断持仓情况的,但发现好像不行
      }  
                  
      MaxPosScore = 0;  //取所有buy signal的positionScore中的最大值,初始值                     
      for (sig = bo.GetFirstSignal(i); sig; sig = bo.GetNextSignal(i))
      {                                                      
         MaxPosScore = Max(sig.PosScore, MaxPosScore);  //求positionScore的最大值                                                      
      }
           
      for (sig = bo.GetFirstSignal(i); sig; sig = bo.GetNextSignal(i))
      {                                         
         if (sig.PosScore == MaxPosScore)  //只买入positionScore最大的那一只股票
         {         
            if (HaveOpenPos > 0 AND MinPctProfit >= 10)           
               sig.PosSize = -10;  //如果持仓,且所有仓位中浮盈最少的股票>=10%,则买入                                               
            if (HaveOpenPos == 0)
               sig.PosSize = -10;  //如果没有持仓,买入      
         }                  
      }     
      bo.ProcessTradeSignals(i);      
   }
   bo.PostProcess();
}

PositionSize = 0; //对所有的position的数量大小设置为0,只有满足以上条件的,才有买入动作
PositionScore = ... //你自己设定的排序方式

//以下是你的主代码部分...

以上已经测试过了,符合我的要求。

評分

參與人數 1金錢 +2 收起 理由
lwhuang + 2 太強了新手就會custombacktest

查看全部評分

回復 支持 1 反對 0

使用道具 舉報

 樓主| 發表於 16-2-2 09:56 | 顯示全部樓層
keymaker 發表於 16-1-31 15:29
回信內容是希望您先付費..然後才會給準確的線索..

您要的功能用 custom backtester 做也可以..但是進入障 ...

AmiBroker的技術支援,怎么购买?谢谢!
發表於 16-2-2 14:47 | 顯示全部樓層
http://www.amibroker.com/order.php

最近買很划算..
發表於 16-2-2 14:48 | 顯示全部樓層
yanhai257 發表於 16-2-2 09:56
AmiBroker的技術支援,怎么购买?谢谢!

只要買軟體..就有技術支援..
發表於 16-2-2 14:51 | 顯示全部樓層
yanhai257 發表於 16-2-2 09:52
代码我已经想出来了,如下:
SetCustomBacktestProc("");
if(Status("action") == actionPortfolio)

請問您是怎麼測試的 (什麼版本) (什麼環境 charting or Analysis window )
 樓主| 發表於 16-2-2 18:53 | 顯示全部樓層
本帖最後由 yanhai257 於 16-2-2 19:04 編輯

professional edition 64bit version6.00.2

软件我是上个月买的,技术支持其实很有限,只有安装、图表的各种用法、数据的导入、设置数据的插件和基础的programming问题(如怎么写loop程序和用户自定义function)。但如果你有什么想法想做backtest测试,他们是不会提供这样的支持的,这方面的支持他们只提供了一些第三方的网站,通常这样的网站要么是一些论坛供大家相互讨论,更多的是一些你出钱,他帮你写代码的网站。
發表於 16-2-2 19:09 | 顯示全部樓層
本帖最後由 keymaker 於 16-2-2 19:12 編輯
yanhai257 發表於 16-2-2 18:53
professional edition 64bit version6.00.2

了解..小提醒..加入 AmiBroker 要有心理準備.. 比較起來 ..

AmiBroker 服務是工程師性格..有話直說 (不會 "很客氣") .. 不過真的非常專業 ..( I like it)

Multicharts 服務是銷售員性格..會轉彎 (基本上 "比較客氣") .. 但是 .. (oh my god)

還有..看您的學習與英文能力..多數人..會有一段時間可能雞同鴨講 ..
但學會之後 .. 會覺得 AmiBroker 真的太神奇了




回復 支持 1 反對 0

使用道具 舉報

 樓主| 發表於 16-2-2 19:53 | 顯示全部樓層
keymaker 發表於 16-2-2 19:09
了解..小提醒..加入 AmiBroker 要有心理準備.. 比較起來 ..

AmiBroker 服務是工程師性格..有話直說 (不會 ...

谢谢!
个人英文能力一般,看他们的英文资料需要不停的查阅字典和写代码进行测试。真希望论坛里能有多一些高手出来帮忙解答疑问,让我们这些新手们能少走一些弯路。
amibroker的中文资料实在是太稀缺了,中文论坛也少,我现在所知道的,比较专业的两个论坛就是“海洋部落”和这里,海洋部落那里还不能注册,更多的是要自己啃英文资料,自己摸索,真的很蛋疼。不知道大家有没有更好的建议?
發表於 16-2-3 09:08 | 顯示全部樓層
yanhai257 發表於 16-2-2 19:53
谢谢!
个人英文能力一般,看他们的英文资料需要不停的查阅字典和写代码进行测试。真希望论坛里能有多一 ...

如果 AmiBroker 可以被券商使用..那大家就福氣了..(查資料會發現非洲有家 ShareNet 的券商就是用 AmiBroker..非洲人都那麼進步了..)
雖然 Multicharts 圖示非常漂亮..但是「易學難精」.. Basic 語法好寫但是很長很長
(常常 AmiBroker 兩句話..Multichart 要說十幾句才能完成)
長期下來..你會覺得其實 AmiBroker 還比較能滿足「碼農」的成就感..
不然..如果只要下單方便..那華人世界只有用 Multicharts 了

發表於 16-2-9 07:49 | 顯示全部樓層
本帖最後由 lwhuang 於 16-2-9 07:53 編輯
keymaker 發表於 16-2-3 09:08
如果 AmiBroker 可以被券商使用..那大家就福氣了..(查資料會發現非洲有家 ShareNet 的券商就是用 AmiBrok ...

要下單方便要自己寫下單機plug-in
目前只有提供C的sdk
我希望官方能提供多一些版本,例如C#, java
因為很多券商現在只有C#版的API
報價 data C# plug-in因為有高人在github有分享,我也有成功
下單 AFL C# plug-in 目前還找不到範例
發表於 16-6-22 18:38 | 顯示全部樓層
如果能知道如何令 C 與 C# 接軌..那就可以目前提供的 C API

Dr. Tomaz 提供的 C API 裡面引用多層指標 .. (C# 及 VB 沒有類似的 data structure)

之前花了一些時間試轉為 C# 及 VB (但遇到多層指標..目前無解)
您需要登錄後才可以回帖 登錄 | 註冊

本版積分規則

手機版|Archiver|站長信箱|廣告洽詢|COCO研究院

GMT+8, 24-11-25 10:22

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

快速回復 返回頂部 返回列表
理財討論網站 |