Rss & SiteMap

金字塔客服中心 - 专业程序化交易软件提供商 http://www.weistock.com/bbs/

专业程序化软件提供商
共3 条记录, 每页显示 10 条, 页签: [1]
[浏览完整版]

标题:我想定义一个以stklabel()为参数的函数,该怎么办?

1楼
p_b_yu 发表于:2010/4/4 22:05:20

我想定义一个以stklabel()为参数的函数。

 

比如图表的stklabel()返回是rb00(螺纹连续),这个函数叫sigma,sigma(stklabel())就返回一个与螺纹连续相关的值。

 

这个函数我已经写好了:

 

Function sigma(Formula,code as string)
    '系统会在解释公式时的每个周期都会调用此函数一遍,因此设计时应该注重程序的执行效率,不要重复的执行一些没必要的代码
    Code1=Left(LCase(code),1)
    Code2=Left(LCase(Code),2)
 if "cu" = Code2 then
  sigma=0.01573750
 Elseif "zn" = Code2 then
  sigma=0.02080251
 Elseif "au" = Code2 then
  sigma=0.01651787
 Elseif "cf" = Code2 then
  sigma=0.00961140
 Elseif "ru" = Code2 then
  sigma=0.01848095
 Elseif "sr" = Code2 then
  sigma=0.01528973
 Elseif "rb" = Code2 then
  sigma=0.01461848
 Elseif "er" = Code2 then
  sigma=0.00707902
 Elseif "fu" = Code2 then
  sigma=0.01663630
 Elseif "ta" = Code2 then
  sigma=0.01428965
 Elseif "ro" = Code2 then
  sigma=0.01717132

 Elseif "a" = Code1 then
  sigma=0.01350464
 Elseif "m" = Code1 then
  sigma=0.01482739
 Elseif "y" = Code1 then
  sigma=0.01638256
 Elseif "v" = Code1 then
  sigma=0.01422112
 Elseif "p" = Code1 then
  sigma=0.02099730
 Elseif "l" = Code1 then
  sigma=0.01773463
 Elseif "c" = Code1 then
  sigma=0.01531951
 End If
End Function

问题就出在红色的“code as string”上。

如果这个“code as string”改为"code",则code默认是数值型的变量,传进一个数值型的数,总是传进来100000,我这个函数就达不到效果。

如果保留“code as string”,又编译不过,编译器不识别"as string"。

 

我想请问的就是,我该如何定义一个参数类型是字符串型的变量,来达到我的目的?

2楼
admin 发表于:2010/4/5 11:49:10

金字塔公式系统和自定义函数不支持字符串参数

3楼
p_b_yu 发表于:2010/4/5 14:01:01
以下是引用admin在2010-4-5 11:49:10的发言:

金字塔公式系统和自定义函数不支持字符串参数

 

谢谢您的及时回复。

 

非常感谢!

共3 条记录, 每页显示 10 条, 页签: [1]


Powered By Dvbbs Version 8.3.0
Processed in 0.01172 s, 3 queries.