• 量化投资_EasyLanguage/PowerLanguage教学课程__【第一篇基础】__【第二十二章策略交易_策略部位】


    第二十二章:策略交易_策略部位

    第一节:策略部位

      策略部位信息包括:进出场名称、进出场日期时间(可锁定图表 的横坐标)、进场场点位(锁定图表的纵坐标)、进出场后至今的 K 线数目、持仓方向(marketposition)和大小(currentcontracts)、最大的 盈亏金额、图表策略的指定部位的盈亏状况等。 策略部位的信息是指某信号策略插入到图表后,图表上对应的部 位信息,并不对应任何实盘或模拟账号。策略部位和经纪商部位可能 不一致(因保证金不足或滑价等原因导致),一种方法是,可以结合实盘账户资金和部位的函数,当策略部位和经纪商账户 部位不一致时,进行仓位调整或加入更严谨的策略逻辑。另外一种方 法:结合本章的 MarketPosiont_at_Broker_for_The_Strategy 关键字, 取得自动交易对应的策略所在图表的经纪商部位(实际取得是交易追 踪器目前已成交后的部位情况)。 本章节的关键字多是针对单进单出的策略,对于有加仓或分批出 场的策略,无法取到更详细的策略部位信息。。

    第二节:相关函数

    2.1 BarsSinceEntry

    # 语法

    语法 BarsSinceEntry(PosBack)
    参数
    PosBack——数值表达式,用来指定部位:
    0——未平仓部位;
    1——上一个平仓部位(最后一个平仓部位);
    2——上二个平仓部位,依次类推。
    若 PosBack 未指定,则预设为未平仓部位。

    注意 此功能只能用于信号或函数中。无法取加仓的信息

    # 示例

    取得目前仓位进场后的 K 棒数量,并存于变量 Value1:
    Value1= BarsSinceEntry;
    取得最近一笔未平仓部位距今多少根 K 棒数量的,并存入变量
    Value1:
    Value1= BarsSinceEntry(1);

    # 说明

      说明 返回指定部位进场至今的 k 棒数量的数值。

    2.2 BarsSinceExit

    # 语法

    语法 BarsSinceExit(PosBack)
    参数
    PosBack——数值表达式,用来指定部位:
    0——未平仓部位;
    1——上一个平仓部位(最后一个平仓部位);
    2——上二个平仓部位,依次类推。
    若 PosBack 未指定,则预设为未平仓部位。
    注意 此功能只能用于信号或函数中。无法取加仓的信息。

    # 示例

    取得最近一笔平仓部位距今多少根 K 棒数量的,并存入变量Value1:
    Value1= BarsSinceExit(1);

    # 说明

      返回指定部位出场至今的 k 棒数量的数值。特别主要,一般应用为最近平仓部位的状态,因此需要在括号内加入1,这点非常重要

    2.3 ContractProfit

    # 语法

    语法 ContractProfit
    注意 此功能只能用于信号或函数中。

    # 示例

    计算目前未平仓部位每手平均损益,并存入变量 Value1:
    Value1= ContractProfit;

    # 说明:  

      返回指定部位的每手平均损益。

    2.4 CurrentContracts/CurrentShares

    # 语法

    函数或信号脚本:CurrentContracts 或 CurrentShares
    函数或信号或指标脚本:i_CurrentContracts 或 i_CurrentShares

    # 示例

    CurrentContracts 在部位为多头 1 手时,返回 1
    CurrentContracts 在部位为空头 3 手时,返回 3

    # 说明

      返回目前部位手数数值。

    2.5 CurrentEntries

    # 语法

    语法 CurrentEntries
    注意 此功能只能用于信号或函数中。

    # 示例

    取的目前部位的进场笔数,并存于变量 Value1:
    Value1= CurrentEntries;

    # 说明

      返回目前部位的进场笔数。

    2.6 EntryDate

    # 语法

    语法 EntryDate(PosBack)
    参数
    PosBack——数值表达式,用来指定部位:
    0——未平仓部位;
    1——上一个平仓部位(最后一个平仓部位);
    2——上二个平仓部位,依次类推。
    若 PosBack 未指定,则预设为未平仓部位。
    注意 此功能只能用于信号或函数中。无法取加仓的信息。

    # 示例

    将目前部位第一笔进场日期存入变量 Value1;若进场日期为
    200810 月,则 Value1=1081030:
    Value1= EntryDate;
    将最后一个平仓部位第一笔进场的日期存入变量 Value1;若
    进场日期为 199942 日,则 Value1=990402:
    Value1= EntryDate(1);

    # 说明

      返回指定部位第一笔进场的日期。

    2.7 EntryName

    # 语法

    语法 EntryName(PosBack)
    参数
    PosBack——数值表达式,用来指定部位:
    0——未平仓部位;
    1——上一个平仓部位(最后一个平仓部位);
    2——上二个平仓部位,依次类推。
    若 PosBack 未指定,则预设为未平仓部位。
    注意 此功能只能用于信号或函数中。无法取加仓的信息。

    # 示例

    将目前部位第一笔进场信号名称存入变量 Value1;若进场信
    号名称为 Buy1,则 Value1=”Buy1”:
    Value1= EntryName;
    
    将最后一个平仓部位第一笔进场的信号名称存入变量 Value1;
    若进场信号名称为 Buy1,则 Value1=”Buy1”:
    Value1= EntryName(1);

    # 说明

      返回指定部位第一笔进场的信号名称。

    2.8 EntryPrice

    # 语法

    语法 EntryPrice(PosBack)
    参数
    PosBack——数值表达式,用来指定部位:
    0——未平仓部位;
    1——上一个平仓部位(最后一个平仓部位);
    2——上二个平仓部位,依次类推。
    若 PosBack 未指定,则预设为未平仓部位。
    注意 此功能只能用于信号或函数中。无法取加仓的信息。

    # 示例

    将目前部位第一笔进场价格存入变量 Value1:
    Value1= EntryPrice;
    
    将最后一个平仓部位第一笔进场的价格存入变量 Value1:
    Value1= EntryPrice(1);

    # 说明

      返回指定部位第一笔进场的价格。这个函数最为常用。

    2.9 EntryTime

    # 语法

    语法 EntryTime(PosBack)
    参数
    PosBack——数值表达式,用来指定部位:
    0——未平仓部位;
    1——上一个平仓部位(最后一个平仓部位);
    2——上二个平仓部位,依次类推。
    若 PosBack 未指定,则预设为未平仓部位。
    注意 此功能只能用于信号或函数中。无法取加仓的信息。

    # 示例

    将目前部位第一笔进场时间存入变量 Value1;若进场时间为
    上午 10:15,则 Value1=1015:
    Value1= EntryTime;
    将最后一个平仓部位第一笔进场的时间存入变量 Value1;若
    进场日期为下午 2:45,则 Value1=1445:
    Value1= EntryTime(1);

    # 说明

      返回指定部位第一笔进场的时间。

    2.10 ExitDate

    # 语法

    语法 ExitDate(PosBack)
    参数
    PosBack——数值表达式,用来指定部位:
    1——上一个平仓部位(最后一个平仓部位);
    2——上二个平仓部位,依次类推。
    注意 此功能只能用于信号或函数中。无法取加仓的信息。

    # 示例

    将上一个平仓部位最后一笔出场日期存入变量 Value1:
    Value1= ExitDate(1);
    若出场日期为 200810 月,则 Value1=1081030

    # 说明

      返回指定部位最后一笔出场的日期。

    2.11 ExitName

    # 语法

    语法 ExitName(PosBack)
    参数
    PosBack——数值表达式,用来指定部位:
    1——上一个平仓部位(最后一个平仓部位);
    2——上二个平仓部位,依次类推。
    注意 此功能只能用于信号或函数中。无法取加仓的信息。

    # 示例

    将最后一个平仓部位最后一笔出场的信号名称存入变量
    Value1:
    Value1= ExitName(1);
    若出场信号名称为 Sell1,则 Value1=”Sell1”

    # 说明

      返回指定部位最后一笔出场的信号名称。

    2.12 ExitPrice

    # 语法

    语法 ExitPrice(PosBack)
    参数
    PosBack——数值表达式,用来指定部位:
    1——上一个平仓部位(最后一个平仓部位);
    2——上二个平仓部位,依次类推。
    注意 此功能只能用于信号或函数中。无法取加仓的信息。

    # 示例

    将上一个平仓部位最后一笔出场的价格存入变量 Value1:
    Value1= ExitPrice(1);

    # 说明

      返回指定部位最后一笔出场的价格。

    2.13 ExitTime

    # 语法

    语法 ExitTime(PosBack)
    参数
    PosBack——数值表达式,用来指定部位:
    1——上一个平仓部位(最后一个平仓部位);
    2——上二个平仓部位,依次类推。
    注意 此功能只能用于信号或函数中。无法取加仓的信息。

    # 示例

    将最后一个平仓部位最后一笔出场的时间存入变量 Value1:
    Value1= ExitTime(1);
    若出场时间为下午 2:45,则 Value1=1445

    # 说明

      返回指定部位最后一笔出场的时间。

    2.14 MarketPosition

    # 语法

    语法 
    信号或函数中:MarketPosition(PosBack)
    参数
    PosBack——数值表达式,用来指定部位:
    0——未平仓部位;
    1——上一个平仓部位(最后一个平仓部位);
    2——上二个平仓部位,依次类推。
    若 PosBack 未指定,则预设为未平仓部位。
    返回
    1——多头部位
    0——无持仓
    -1——空头部位

    # 示例

    若目前无持仓,则 MarketPosition 将会返回 0
    若目前部位为多头,则 MarketPosition 或 i_MarketPosition 返
    回 1

    # 说明

      返回代表指定部位多空状态的数值。

    2.15 i_MarketPosition_at_Broker MarketPosition_at_Broker

    # 语法

    语法 
    信号脚本:MarketPosition _at_Broker 函数及指标脚本:i_MarketPosition_at_Broker
    注意
    *此功能和 MarketPosition 不同,仅能获取的目前最新的状态, 无法透过参数取得历史交易资料。 *此功能只能用于 Interactive Brokers, Patsystems 和 Zen-Fire 经纪商。

    # 示例

    目前部位为多头 3 手,则 MarketPosition_at_Broker 会返回 3
    目前部位为空头 3 手,则 i_MarketPosition_at_Broker 会返回
    -3
    目前部位为空手,则 MarketPosition_at_Broker 会返回 0

    # 说明

      返回目前商品在经纪商的部位数量及状态。 返回正值表示多头持仓,返回负值表示空头持仓。当持仓平掉或自动交易关闭时,返回数值”0”。

    2.16 i_MarketPosition_at_Broker_for_The_Strategy MarketPosition_at_Broker_for_The_Strategy

    # 语法

    语法 
    信号脚本:MarketPosition_at_Broker_for_The_Strategy 函数及指标:i_MarketPosition_at_Broker_for_The_Strategy
    注意 此功能和 MarketPosition 不同,仅能获取的目前最新的状态, 无法透过参数取得历史交易资料。
    重要提示 如果用户手动关闭自动交易,关键字返回值不再改变,有可 能保持非
    0 值。

    # 示例

    MarketPosition _at_Broker_for_The_Strategy 当部位为多头 3手时,将会返回 3
    MarketPosition _at_Broker_for_The_Strategy 当部位为空头 3手时,将会返回-3
    MarketPosition _at_Broker_for_ The_Strategy 当无持仓或自动交易未开启时,将会返回 0

    # 说明

      返回目前商品在经纪商的部位数量及状态。 返回正值表示多头持仓,返回负值表示空头持仓。 当持仓平掉或自动交易关闭时,返回数值”0”。

    2.17 MaxContractProfit

    # 语法

    语法 MaxContractProfit
    注意 此功能只能用于信号或函数中。

    # 示例

    计算目前未平仓部位曾获得的每手最大获利,并存于变量Value1:
    Value1= MaxContractProfit;

    # 说明

      返回目前部位曾获得的每手最大获利。

    2.18 MaxContracts/MaxShares

    # 语法

    语法 MaxContracts(PosBack)
    参数
    PosBack——数值表达式,用来指定部位:
    0——未平仓部位;
    1——上一个平仓部位(最后一个平仓部位);
    2——上二个平仓部位,依次类推。
    若 PosBack 未指定,则预设为未平仓部位。
    注意 此功能只能用于信号或函数中。

    # 示例

    若目前无持仓,则 MaxContracts 会返回 0
    若最后一次平仓的部位最大曾有 10 手多头或空头,则 MaxContracts(1) 会返回 10

    # 说明

      返回指定部位最大手数的绝对值。

    2.19 MaxEntries

    # 语法

    语法 MaxEntries(PosBack)
    参数
    PosBack——数值表达式,用来指定部位:
    0——未平仓部位;
    1——上一个平仓部位(最后一个平仓部位);
    2——上二个平仓部位,依次类推。
    若 PosBack 未指定,则预设为未平仓部位。
    注意 此功能只能用于信号或函数中。

    # 示例

    若最后一次平仓的部位是分 2 笔进场,则 MaxEntries(1)会返回 2

    # 说明

      返回指定部位总共进场的笔数。

    2.20 MaxPositionAgo

    # 语法

    语法 MaxPositionAgo
    注意 测试 MaxPositionAgo 无法编译成功,可用关键字
    MaxPositionsAgo。

    # 示例

    若策略过去总共交易过 2 次,则 MaxPositionsAgo 会返回 2

    # 说明

      返回过去曾经交易过的次数。

    2.21 MaxPositionLoss

    # 语法

    语法 MaxPositionLoss(PosBack)
    参数
    PosBack——数值表达式,用来指定部位:
    0——未平仓部位;
    1——上一个平仓部位(最后一个平仓部位);
    2——上二个平仓部位,依次类推。
    若 PosBack 未指定,则预设为未平仓部位。
    注意 此功能只能用于信号或函数中。

    # 示例

    若最后一次平仓的部位持有期间的最大亏损为 20,则 MaxPositionLoss(1)会返回-20

    # 说明

      返回指定部位持有期间内出现的最大亏损数值。

    2.22 MaxPositionProfit

    # 语法

    语法 MaxPositionProfit(PosBack)
    参数
    PosBack——数值表达式,用来指定部位:
    0——未平仓部位;
    1——上一个平仓部位(最后一个平仓部位);
    2——上二个平仓部位,依次类推。
    若 PosBack 未指定,则预设为未平仓部位。
    注意 此功能只能用于信号或函数中

    # 示例

    若最后一次平仓的部位持有期间的最大获利为 20,则 MaxPositionProfit(1)会返回 20

    # 说明

      返回指定部位持有期间内出现的最大获利数值。

    2.23 OpenPositionProfit

    # 语法

    语法 OpenPositionProfit
    注意 此功能只能用于信号或函数中。

    # 示例

    若目前无持仓,即 OpenPositionProfit 会返回 0
    若目前部位获利 5,即 OpenPositionProfit 会返回 5
    若目前部位亏损 10,即 OpenPositionProfit 会返回 -10

    # 说明

      返回目前未平仓部位的获利(亏损)金额。

    2.24 PositionProfit

    # 语法

    语法 PositionProfit(PosBack)
    参数
    PosBack——数值表达式,用来指定部位:
    0——未平仓部位;
    1——上一个平仓部位(最后一个平仓部位);
    2——上二个平仓部位,依次类推。
    若 PosBack 未指定,则预设为未平仓部位。
    注意 此功能只能用于信号或函数中。

    # 示例

    若目前无持仓,则 PositionProfit 会返回 0
    若目前未平仓部位获利 5,则 PositionProfit(0)会返回 5
    若最后一个已平仓部位亏损 5,则 PositionProfit(-1)会返回 -5

    # 说明

      返回指定部位的获利(亏损)金额。

    第三节:策略部位同步

      策略部位同步主要针对交易插件或者交易所不支持市价单的情况,使用TOUCHANGE交易到内盘交易所都支持市价单,这两个功能可不选用。大多数情况下,我们在策略交易设置中选择即可。英文文档可参照:http://www.multicharts.com/pm/viewissue.php?issue_no=MC-14

    3.1 ChangeMarketPosition

    # 语法

    语法 ChangeMarketPosition(Delta,Price, Name)
    参数
    Delta——指定要标注在图上的信号手数
    Price——指定价格
    Name——指定信号名称
    注意
    *可以用来同步策略部位和经纪商部位。
    *经过测试,ChangeMarketPosition 只会在图上标出信号,不
    会发委托单到达钱。

    # 示例:

    If MarketPosition = 2 Then ChangeMarketPosition(-2,100,"LX")
    如果当前持仓为 2(实际不可以这样写),则在图上标出买平
    仓指令信号,信号名称为"LX",价格为 100
    If MarketPosition = 0 Then ChangeMarketPosition (-2,100,"SE")
    如果当前没有持仓,则在图上标出卖开仓指令,信号名称为
    "SE",价格为 100
    更多例子,可以参考内置信号"!From Strategy To Broker MPSynchronizer!"

    # 说明

      在图表上标注一个指定名称和价格的指令信号。 无论是否开启自动交易,此关键字产生的指令信号不会发到 经纪商。

    3.2 PlaceMarketOrder

    # 语法

    语法 PlaceMarketOrder(IsBuy, IsEntry, Contracts)
    参数
    IsBuy——用来指定委托是买或卖,True 为买,False 为卖。
    IsEntry——指定委托为新仓或平仓,True 为新仓,False 为平
    仓(MultiCharts 实际发的是自动单)。
    Contracts——指定委托的手数。
    注意
    *在自动交易关闭时使用。
    *可以用来同步策略部位和经纪商部位。
    *经测试,开启自动交易,PlaceMarketOrder 会实际发单到达
    钱,MultiCharts 图上不会产生信号。

    # 示例:

    If MarketPosition = 2 and MarketPosition_at_Broker = 4 then
    PlaceMarketOrder(false, false, 2);
    当前图上部位为多头 2 手(实际应该用
    MarketPosition*CurrentContracts = 2),经纪商部位为多头4手,
    MultiCharts 将会发出 2 手市价卖单到经纪商。
    更多例子,可以参考内置信号"!From Strategy To Broker MP
    Synchronizer!"

    # 说明

      不改变图表上的部位(图上不会有信号产生),发市价单到经纪商。

    第四节:策略部位交易

       本章关键字可取得指定进场的委托价格(类似于Get函数)、手续费、日期、最大最 小盈亏等信息。PosTrade 系列的关键字,还可以取得加仓的进出场价 格、日期、名称、多空状态、大小等。

      指的注意的一点是:

      若程序中含有加仓语句,信号所在图表窗口的加仓限制需要被打 开。方法:至“格式”->“策略属性”->“属性”中,将“部位限制” 打勾,并输入同方向的总得进场笔数。

    4.1 OpenEntriesCount

    # 说明:和 CurrentEntries 用法一样。

    4.2 OpenEntryComission

    # 语法

    语法 OpenEntryComission(EntryIndex)
    参数 EntryIndex——数值表达式,表示指定交易是第几笔进场(从
    0 开始)。
    注意
    *此关键字只能用在信号中。
    *检测未平仓部位总笔数可以用 OpenEntriesCount。

    # 示例

    语法 OpenEntryComission(EntryIndex)
    参数 EntryIndex——数值表达式,表示指定交易是第几笔进场(从
    0 开始)。
    注意
    *此关键字只能用在信号中。
    *检测未平仓部位总笔数可以用 OpenEntriesCount。

    # 说明

      说明返回一个数值,表示未平仓部位的指定交易手续费金额(以美元表示)。

    4.3 OpenEntryContracts

    # 语法

    语法 OpenEntryContracts(EntryIndex)
    参数 EntryIndex——数值表达式,表示指定交易是第几笔进场(从
    0 开始)。
    注意
    *此关键字只能用在信号中。
    *检测未平仓部位总笔数可以用 OpenEntriesCount。

    # 示例

    如果当前未平仓部位为 3 手,由 1 手和 2 手的两笔进场产生,
    则 OpenEntryContracts 会返回 1,表示第一笔进场为 1 手。
    如果当前未平仓部位为 3 手,由 1 手和 2 手的两笔进场产生,
    则 OpenEntryContracts(1)会返回 2,表示第二笔进场为 2 手。

    # 说明

      返回一个数值,表示当前未平仓部位中指定进场的委托手数。

    4.4 OpenEntryDate

    # 语法

    语法 OpenEntryDate(EntryIndex)
    参数 EntryIndex——数值表达式,表示指定交易是第几笔进场(从
    0 开始)。
    注意 *此关键字只能用在信号中*检测未平仓部位总笔数可以用 OpenEntriesCount。

    # 示例

    如果当前未平仓部位的第二笔进场委托在 201142 日产
    生,则 OpenEntryDate(1)返回值为 1110402

    # 说明

      返回一个数值,表示当前未平仓部位中指定进场的委托日期。 日期格式显示为 YYYMMdd,YYY 表示自 1900 至今的年份, MM 表示月,dd 表示日。

    4.5 OpenEntryMaxProfit

    # 语法

    语法 OpenEntryMaxProfit(EntryIndex)
    参数 EntryIndex——数值表达式,表示指定交易是第几笔进场(从
    0 开始)。
    注意
    *此关键字只能用在信号中。
    *检测未平仓部位总笔数可以用 OpenEntriesCount。

    # 示例

    如果当前未平仓部位的第一笔进场曾经达到 20dollar 的最大利润,则 OpenEntryMaxProfit 返回值为 20

    # 说明

      返回数值,表示从进场委托执行开始到当前时间, OpenEntryProfit 的最大值。

    4.6 OpenEntryMaxProfitPerContract

    # 语法

    语法 OpenEntryMaxProfitPerContract(EntryIndex)
    参数 EntryIndex——数值表达式,表示指定交易是第几笔进场(从0 开始)。
    注意
    *此关键字只能用在信号中。
    *检测未平仓部位总笔数可以用 OpenEntriesCount。

    # 示例

    如果当前未平仓部位的第二笔进场曾经达到每手 1.5 dollar 的最大利润,则 OpenEntryMaxProfitPerContract(1)返回值为 1.5

    # 说明

      返回一个数值,表示从进场委托执行开始到当前时间, OpenEntryProfitPerContract 的最大值。

    4.7 OpenEntryMinProfit

    # 语法

    语法 OpenEntryMinProfit(EntryIndex)
    参数 EntryIndex——数值表达式,表示指定交易是第几笔进场(从0 开始)。
    注意
    *此关键字只能用在信号中。
    *检测未平仓部位总笔数可以用 OpenEntriesCount。

    # 示例

    如果当前未平仓部位的第二笔进场曾经最大损失达到 15dollar,则 OpenEntryMinProfit(1)返回值为-15

    # 说明

      返回一个数值,表示从进场委托执行开始到当前时间, OpenEntryProfit 的最小值。

    4.8 OpenEntryMinProfitPerContract

    # 语法

    语法 OpenEntryMinProfitPerContract(EntryIndex)
    参数 EntryIndex——数值表达式,表示指定交易是第几笔进场(从0 开始)。
    注意
    *此关键字只能用在信号中。
    *检测未平仓部位总笔数可以用 OpenEntriesCount。

    # 示例

    如果当前未平仓部位的第二笔进场曾经最大损失达到每手 1.5dollar,则 OpenEntryMinProfitPerContract(1)返回值为-1.5

    # 说明

      返回一个数值,表示从进场委托执行开始到当前时间, OpenEntryProfitPerContract 的最小值。

    4.9 OpenEntryPrice

    # 语法

    语法 OpenEntryPrice(EntryIndex)
    参数 EntryIndex——数值表达式,表示指定交易是第几笔进场(从0 开始)。
    注意
    *此关键字只能用在信号中。
    *检测未平仓部位总笔数可以用 OpenEntriesCount。

    # 示例

    如果当前未平仓部位的第一笔进场委托价格为 101,则
    OpenEntryPrice 返回值为 101.
    
    如果当前未平仓部位的第二笔进场委托价格为 101.5,则
    OpenEntryPrice(1)返回值为 101.5

    # 说明

      返回一个数值,表示当前未平仓部位中指定进场的委托价格。

    4.10 OpenEntryProfit

    # 语法

    语法 OpenEntryProfit(EntryIndex)
    参数 EntryIndex——数值表达式,表示指定交易是第几笔进场(从0 开始)。
    注意
    *此关键字只能用在信号中。
    *检测未平仓部位总笔数可以用 OpenEntriesCount。

    # 示例

    如果当前未平仓部位的第一笔进场的当前利润为 10 dollar,则
    OpenEntryProfit 返回值为 10。
    如果当前未平仓部位的第二笔进场的当前损失达到 10 dollar,
    则 OpenEntryProfit(1)返回值为-10

    # 说明

      返回一个数值,表示当前未平仓部位中指定进场的委托盈利 (负值表示损失)。

    4.11 OpenEntryProfitPerContract

    # 语法

    语法 OpenEntryProfitPerContract(EntryIndex)
    参数 EntryIndex——数值表达式,表示指定交易是第几笔进场(从0 开始)。
    注意
    *此关键字只能用在信号中。
    *检测未平仓部位总笔数可以用 OpenEntriesCount。

    # 示例

    如果当前未平仓部位的第一笔进场的当前利润为每手 1
    dollar,则 OpenEntryProfitPerContract 返回值为 1。
    如果当前未平仓部位的第二笔进场的当前损失达到每手 0.5
    dollar,则 OpenEntryProfitPerContract(1)返回值为-0.5

    # 说明

      返回一个数值,表示当前未平仓部位中指定进场的每手盈利 (负值表示损失)。

    4.12 OpenEntryTime

    # 语法

    语法 OpenEntryTime(EntryIndex)
    参数 EntryIndex——数值表达式,表示指定交易是第几笔进场(从0 开始)。
    注意 此关键字只能用在信号中。
    检测未平仓部位总笔数可以用 OpenEntriesCount。

    # 示例

    如果当前未平仓部位的第一笔进场时间为 10:15AM,则
    OpenEntryTime 返回值为 1015
    如果当前未平仓部位的第二笔进场时间为 3:45PM,则
    OpenEntryTime(1)返回值为 1545

    # 说明

      返回一个数值,表示当前未平仓部位中指定进场的时间。 时间为 HHmm 格式,HH 为 24 小时制时,mm 为分钟。

    4.13 PosTradeCommission

    # 语法

    语法 PosTradeCommission(PosAgo,TradeNumber)
    参数
    PosAgo——数值表达式,用来指定部位:
    0——未平仓部位;
    1——前一个平仓部位(最后一个已平仓部位);
    2——前第二个平仓部位,依此类推
    TradeNumber——数值表达式,表示指定交易是第几笔进场
    (从 0 开始)。
    注意 此关键字只能用在信号中。
    检测指定部位总交易笔数可以用 PosTradeCount。

    # 示例

    如果当前未平仓部位的第二笔进场手续费为 5 dollars,则
    PosTradeCommission(0,1)返回值为 5

    # 说明

      返回一个绝对数值,表示指定部位和指定委托的手续费。

    4.14 PosTradeCount

    # 语法

    语法 PosTradeCount(PosBack)
    参数
    PosBack——数值表达式,用来指定部位:
    0——未平仓部位;
    1——前一个平仓部位(最后一个平仓部位);
    2——前第二个平仓部位,依次类推。
    注意 此关键字只能用在信号中。

    # 示例

    如果最近的已平仓部位有两笔进场,则 PosTradeCount(1)返回值为 2

    # 说明

      返回一个数值,表示指定部位的总交易笔数。

    4.15 PosTradeEntryBar

    # 语法

    语法 PosTradeEntryBar(PosAgo,TradeNumber)
    参数
    PosAgo——数值表达式,用来指定部位:
    0——未平仓部位;
    1——前一个平仓部位(最后一个已平仓部位);
    2——前第二个平仓部位,依此类推
    TradeNumber——数值表达式,表示指定交易是第几笔进场
    (从 0 开始)。
    注意
    *此关键字只能用在信号中。
    *检测指定部位总交易笔数可以用 PosTradeCount。

    # 示例

    如果当前未平仓部位的第二笔进场开仓在第 25 根 Bar(即BarNumber=25),则
    PosTradeEntryBar(0,1)返回值为 25

    # 说明

      返回一个绝对数值,表示指定部位和指定进场委托的 BarNumber。

    4.16 PosTradeEntryCategory

    # 语法

    语法 PosTradeEntryCategory(PosAgo,TradeNumber)
    参数
    PosAgo——数值表达式,用来指定部位:
    0——未平仓部位;
    1——前一个平仓部位(最后一个已平仓部位);
    2——前第二个平仓部位,依此类推
    TradeNumber——数值表达式,表示指定交易是第几笔进场
    (从 0 开始)。
    注意
    *此关键字只能用在信号中。
    *检测指定部位总交易笔数可以用 PosTradeCount。

    # 示例

    如果当前未平仓部位的第二笔进场委托为停止单,则PosTradeEntryCategory(0,1)返回值为 1

    # 说明

      返回一个绝对数值,表示指定部位和指定进场的委托类别。 可能的委托类别有以下几种:

    1 = Stop order (buy next Bar at close - 1 point stop) 停止单

    2 = Limit order (buy next Bar at close + 1 point limit) 限价单

    3 = Market order (buy next Bar market) 市价单

    4 = Market at Close order (buy this Bar at close) 市价单

    5 = Market at Open order (buy next Bar open) 市价单

    6 = Reserved for special orders 为特殊委托单保留

    7 = Reserved for special orders 为特殊委托单保留

    8 = StopLimit order (buy 1 contracts next Bar at close - 2 point stop close + 2 point limit) 停损限价单

    4.17 PosTradeEntryDateTime

    # 语法

    语法 PosTradeEntryDateTime(PosAgo,TradeNumber)
    参数
    PosAgo——数值表达式,用来指定部位:
    0——未平仓部位;
    1——前一个平仓部位(最后一个已平仓部位);
    2——前第二个平仓部位,依此类推
    TradeNumber——数值表达式,表示指定交易是第几笔进场
    (从 0 开始)。
    注意
    *此关键字只能用在信号中。
    *检测指定部位总交易笔数可以用 PosTradeCount。

    # 示例

    如果当前未平仓部位的第二笔进场委托的日期时间为
    2008/1/1,6:00AM,则 PosTradeEntryDateTime(0,1)返回值为
    39448.25000000

    # 说明

      返回指定部位和指定进场委托的儒略日。作为例子请参看 ComputerDateTime。

    4.18 PosTradeEntryName

    # 语法

    语法 PosTradeEntryName(PosAgo,TradeNumber)
    参数
    PosAgo——数值表达式,用来指定部位:
    0——未平仓部位;
    1——前一个平仓部位(最后一个已平仓部位);
    2——前第二个平仓部位,依此类推
    TradeNumber——数值表达式,表示指定交易是第几笔进场
    (从 0 开始)。
    注意 此关键字只能用在信号中。
    检测指定部位总交易笔数可以用 PosTradeCount。

    # 示例

    如果当前未平仓部位的第二笔进场委托名称为"buy LE",则
    PosTradeEntryName(0,1)返回值为"buy LE"

    # 说明

      返回指定部位和指定进场委托名称,进场名称会显示在图表 和交易追踪器委托窗口中。

    4.19 PosTradeEntryPrice

    # 语法

    语法 PosTradeEntryPrice(PosAgo,TradeNumber)
    参数
    PosAgo——数值表达式,用来指定部位:
    0——未平仓部位;
    1——前一个平仓部位(最后一个已平仓部位);
    2——前第二个平仓部位,依此类推
    TradeNumber——数值表达式,表示指定交易是第几笔进场
    (从 0 开始)。
    注意 此关键字只能用在信号中。
    检测指定部位总交易笔数可以用 PosTradeCount。

    # 示例

    如果当前未平仓部位的第二笔进场价格为 100.2,
    则 PosTradeEntryPrice(0,1)返回值为 100.2

    # 说明

      返回指定部位和指定进场的价格。

    4.20 PosTradeExitBar

    # 语法

    语法 PosTradeExitBar(PosAgo,TradeNumber)
    参数
    PosAgo——数值表达式,用来指定部位:
    0——未平仓部位;
    1——前一个平仓部位(最后一个已平仓部位);
    2——前第二个平仓部位,依此类推
    TradeNumber——数值表达式,表示指定交易是第几笔进场
    (从 0 开始)。
    注意
    *此关键字只能用在信号中。
    *检测指定部位总交易笔数可以用 PosTradeCount。

    # 示例

    如果当前未平仓部位的第二笔进场在第 28 根 Bar(即BarNumber=28)被平仓,则
    PosTradeExitBar(0,1)返回值为 28

    # 说明

      返回一个绝对数值,表示指定部位和指定出场委托的 BarNumber。

    4.21 PosTradeExitCategory

    # 语法

    
    
    语法 PosTradeExitCategory(PosAgo,TradeNumber)
    参数 PosAgo——数值表达式,用来指定部位:
    0——未平仓部位;
    1——前一个平仓部位(最后一个已平仓部位);
    2——前第二个平仓部位,依此类推
    TradeNumber——数值表达式,表示指定交易是第几笔进场
    (从 0 开始)。
    注意
    *此关键字只能用在信号中。
    *检测指定部位总交易笔数可以用 PosTradeCount。

    # 示例

    如果当前未平仓部位的第二笔出场委托为停止单,则
    PosTradeExitCategory(0,1)返回值为 1

    # 说明

      返回一个绝对数值,表示指定部位和指定出场的委托类别。 可能的委托类别有以下几种:

    1 = Stop order (buy next Bar at close - 1 point stop) 停止单

    2 = Limit order (buy next Bar at close + 1 point limit) 限价单

    3 = Market order (buy next Bar market) 市价单

    4 = Market at Close order (buy this Bar at close) 市价单

    5 = Market at Open order (buy next Bar open) 市价单

    6 = Reserved for special orders 为特殊委托单保留

    7 = Reserved for special orders 为特殊委托单保留

    8 = StopLimit order (buy 1 contracts next Bar at close - 2 point stop close + 2 point limit) 停损限价单

      

    4.22 PosTradeExitDateTime

    # 语法

    语法 PosTradeExitDateTime(PosAgo,TradeNumber)
    参数
    PosAgo——数值表达式,用来指定部位:
    0——未平仓部位;
    1——前一个平仓部位(最后一个已平仓部位);
    2——前第二个平仓部位,依此类推
    TradeNumber——数值表达式,表示指定交易是第几笔进场
    (从 0 开始)。
    注意
    *此关键字只能用在信号中。
    *检测指定部位总交易笔数可以用 PosTradeCount。

    # 示例

    如果最近的已平仓部位的第二笔出场委托的日期时间为2008/1/1,6:00AM,则
    PosTradeExitDateTime(1,1)返回值为 39448.25000000

    # 说明

      返回指定部位和指定出场委托的儒略日。

    4.23 PosTradeExitName

    # 语法

    语法 PosTradeExitName(PosAgo,TradeNumber)
    参数 PosAgo——数值表达式,用来指定部位:
    0——未平仓部位;
    1——前一个平仓部位(最后一个已平仓部位);
    2——前第二个平仓部位,依此类推
    TradeNumber——数值表达式,表示指定交易是第几笔进场
    (从 0 开始)。
    注意
    *此关键字只能用在信号中。
    *检测指定部位总交易笔数可以用 PosTradeCount。

    # 示例

    如果当前未平仓部位的第二笔进场委托名称为"sell LX",则PosTradeExitName(0,1)返回值为"sell LX"

    # 说明

      返回指定部位和指定出场的委托名称,出场名称会显示在图 表和交易追踪器委托窗口中。

    4.24 PosTradeExitPrice

    # 语法

    语法 PosTradeExitPrice(PosAgo,TradeNumber)
    参数
    PosAgo——数值表达式,用来指定部位:
    0——未平仓部位;
    1——前一个平仓部位(最后一个已平仓部位);
    2——前第二个平仓部位,依此类推
    TradeNumber——数值表达式,表示指定交易是第几笔进场
    (从 0 开始)。
    注意
    *此关键字只能用在信号中。
    *检测指定部位总交易笔数可以用 PosTradeCount。

    # 示例

    如果当前未平仓部位的第二笔交易出场价格为 100.2,则PosTradeExitPrice(0,1)返回值为 100.2

    # 说明

      返回指定部位的指定出场的价格。

    4.25 PosTradeIsLong

    # 语法

    语法 PosTradeIsLong(PosAgo,TradeNumber)
    参数 PosAgo——数值表达式,用来指定部位:
    0——未平仓部位;
    1——前一个平仓部位(最后一个已平仓部位);
    2——前第二个平仓部位,依此类推
    TradeNumber——数值表达式,表示指定交易是第几笔进场
    (从 0 开始)。
    注意
    *此关键字只能用在信号中。
    *检测指定部位总交易笔数可以用 PosTradeCount。

    # 示例

    如果当前未平仓部位的第二笔交易为买单进场,则PosTradeIsLong(0,1)返回值为 true

    # 说明

      如果指定部位和指定交易为买单进场,则返回 true,否则, 返回 false。

    4.26 PosTradeIsOpen

    # 语法

    语法 PosTradeIsOpen(PosAgo,TradeNumber)
    参数
    PosAgo——数值表达式,用来指定部位:
    0——未平仓部位;
    1——前一个平仓部位(最后一个已平仓部位);
    2——前第二个平仓部位,依此类推
    TradeNumber——数值表达式,表示指定交易是第几笔进场
    (从 0 开始)。
    注意
    *此关键字只能用在信号中。
    *检测指定部位总交易笔数可以用 PosTradeCount。

    # 示例

    如果当前未平仓部位的第二笔交易还未平仓(没有平仓委托),则 PosTradeIsOpen(0,1)返回值为 true

    # 说明

      如果指定部位和指定交易未平仓,则返回 true,已平仓,返 回 false。 此关键字只对未平仓部位有意义,其他已平仓部位返回值一 直为 false。

    4.27 PosTradeProfit

    # 语法

    语法 PosTradeProfit(PosAgo,TradeNumber)
    参数
    PosAgo——数值表达式,用来指定部位:
    0——未平仓部位;
    1——前一个平仓部位(最后一个已平仓部位);
    2——前第二个平仓部位,依此类推
    TradeNumber——数值表达式,表示指定交易是第几笔进场
    (从 0 开始)。
    注意
    *此关键字只能用在信号中。
    *检测指定部位总交易笔数可以用 PosTradeCount。

    # 示例

    如果当前未平仓部位的第二笔交易盈利为 3dollars,则PosTradeProfit(0,1)返回值为 3

    # 说明

      返回一个绝对数值,表示指定部位和指定交易的盈利(负值 表示亏损)。

    4.28 PosTradeSize

    # 语法

    语法 PosTradeSize(PosAgo,TradeNumber)
    参数
    PosAgo——数值表达式,用来指定部位:
    0——未平仓部位;
    1——前一个平仓部位(最后一个已平仓部位);
    2——前第二个平仓部位,依此类推
    TradeNumber——数值表达式,表示指定交易是第几笔进场
    (从 0 开始)。
    注意
    *此关键字只能用在信号中。
    *检测指定部位总交易笔数可以用 PosTradeCount。

    # 示例

    如果当前未平仓部位的第二笔交易的委托合约手数为 2 手,则 PosTradeSize(0,1)返回值为 2

    # 说明

      返回一个绝对数值,表示指定部位和指定交易的合约手数。

    =================================================

    之前的文章感谢大家的转载,希望转载时请注明出处,本人转自其它网站的图表一并感谢,谢谢~!

    https://www.cnblogs.com/noah0532/

  • 相关阅读:
    WebSocket资料
    HTML5新增特性
    CSS3新增选择器
    HTM5基本语法
    HTML语义化
    浏览器内核分类
    Layui表格的单双击处理
    c++ cin读取多行数字
    计算机视觉中关于人脸的一些任务
    python实现NMS和softNMS代码
  • 原文地址:https://www.cnblogs.com/noah0532/p/13702957.html
Copyright © 2020-2023  润新知