问答

DolphinDB表schema写法的问题

作者:admin 2021-08-18 我要评论

我想写一个schema, 正常情况下这么长,也不好维护: table(`time`sym`last`qtrade`bid`qbid`ask`qask`bid2`qbid2`ask2`qask2`bid3`qbid3`ask3`qask3`bid4`qbid4...

在说正事之前,我要推荐一个福利:你还在原价购买阿里云、腾讯云、华为云服务器吗?那太亏啦!来这里,新购、升级、续费都打折,能够为您省60%的钱呢!2核4G企业级云服务器低至69元/年,点击进去看看吧>>>)

我想写一个schema, 正常情况下这么长,也不好维护:

table(`time`sym`last`qtrade`bid`qbid`ask`qask`bid2`qbid2`ask2`qask2`bid3`qbid3`ask3`qask3`bid4`qbid4`ask4`qask4`bid5`qbid5`ask5`qask5`bid6`qbid6`ask6`qask6`bid7`qbid7`ask7`qask7`bid8`qbid8`ask8`qask8`bid9`qbid9`ask9`qask9`bid10`qbid10`ask10`qask10 as name, `NANOTIME`STRING`LONG`LONG`LONG`LONG`LONG`LONG`LONG`LONG`LONG`LONG`LONG`LONG`LONG`LONG`LONG`LONG`LONG`LONG`LONG`LONG`LONG`LONG`LONG`LONG`LONG`LONG`LONG`LONG`LONG`LONG`LONG`LONG`LONG`LONG`LONG`LONG`LONG`LONG`LONG`LONG`LONG`LONG as type)

有没有类似的:

.hkmd.schema: flip `origName`colName`colType ! flip (
    ("time";    `time;    "N");
    ("symbol";    `sym;    "*");
    ("last";    `trade;    "J");
    ("lastv";    `qtrade;    "J");
    ("bidp1";    `bid;    "J");
    ("bidv1";    `qbid;    "J");
    ("askp1";    `ask;    "J");
...
    ("askp10";    `ask10;    "J");
    ("askv10";    `qask10;    "J")
    );

就是想一列一列写出来。但是不是name全放在一起,type全放在一起。而是一行一个name,一个type,对应csv文件中的一列。这样有个对应,也好修改理解。比如,第一行,timeNANOTIME就是和第一列对应。在dophinDB里面试了几下,好像都没有试出来,有什么建议吗?

###

可以参考下面例子:


def createMarketStreamTable(tableName,capacity){
    st=streamTable(
array(SYMBOL,0) as Permission,
array(SYMBOL,0) as DataModel,
array(STRING,0) as IC,
array(SYMBOL,0) as DsplyNameLoc,
array(SYMBOL,0) as DsplyNameEn,
array(STRING,0) as DisplayTemplateID,
array(SYMBOL,0) as Currency,
array(SYMBOL,0) as CCYLoc,
array(SYMBOL,0) as BB,
array(SYMBOL,0) as InstruType,
array(STRING,0) as InstruDesc,
array(STRING,0) as ContributorID,
array(SYMBOL,0) as CtbtrLoc,
array(SYMBOL,0) as CtbtrLocC,
array(SYMBOL,0) as CtbtrNLoc,
array(SYMBOL,0) as CtbtrNEn,
array(SYMBOL,0) as OwnSite,
array(SYMBOL,0) as BkgdChn,
array(STRING,0) as SecurityID,
array(SYMBOL,0) as MnemonicC,
array(STRING,0) as BondName,
array(STRING,0) as BondFullName,
array(INT,0) as TrdType,
array(INT,0) as TradeMethod,
array(DATE,0) as TradeDate,
array(TIME,0) as TradeTime,
array(STRING,0) as ExecID,
array(FLOAT,0) as TradePrice,
array(FLOAT,0) as DirtyPrice,
array(FLOAT,0) as Yield,
array(INT,0) as AmountUnit,
array(FLOAT,0) as TradeVolume,
array(FLOAT,0) as AccruedInterest,
array(INT,0) as TradeQuantity,
array(SYMBOL,0) as TrdPxPctgChg,
array(SYMBOL,0) as ResidualMaturity,
array(INT,0) as SettlSpeed,
array(INT,0) as DeliveryType,
array(FLOAT,0) as SettlCurrAmt,
array(INT,0) as ExerciseFlag,
array(INT,0) as TransactChannel,
array(STRING,0) as BidBrokerID,
array(STRING,0) as BidAgentID,
array(STRING,0) as BidPartyID,
array(STRING,0) as BidPartySubID,
array(STRING,0) as OfrBrokerID,
array(STRING,0) as OfrAgentID,
array(STRING,0) as OfrPartyID,
array(STRING,0) as OfrPartySubID,
array(FLOAT,0) as OpenPx,
array(FLOAT,0) as OpenDirtyPx,
array(TIME,0) as OpenTime,
array(FLOAT,0) as OpenYld,
array(FLOAT,0) as HighPx,
array(TIME,0) as HighTime,
array(FLOAT,0) as HighYield,
array(FLOAT,0) as LowYield,
array(FLOAT,0) as LowPx,
array(TIME,0) as LowTime,
array(FLOAT,0) as ClosePx,
array(FLOAT,0) as ClsDirtyPx,
array(TIME,0) as CloseTime,
array(FLOAT,0) as CloseYield,
array(FLOAT,0) as PrevClosePx,
array(TIME,0) as PrevCloseTime,
array(FLOAT,0) as PrevCloseYield,
array(FLOAT,0) as PrevAvgPx,
array(FLOAT,0) as PrevAvgYield,
array(FLOAT,0) as AccumulatedAmt,
array(INT,0) as TotalNumTrades,
array(INT,0) as TotalTradeQuantity,
array(FLOAT,0) as AvgPx,
array(FLOAT,0) as AvgCloseYield,
array(FLOAT,0) as IssueSize,
array(FLOAT,0) as UnpaySize,
array(INT,0) as OptionType,
array(INT,0) as CouponRateType,
array(INT,0) as IsMunicipal,
array(INT,0) as CouponPaymentFrequency,
array(INT,0) as DayCount,
array(FLOAT,0) as CouponRate,
array(FLOAT,0) as CouponRateSpread,
array(FLOAT,0) as ReferenceRate,
array(SYMBOL,0) as SecurityTerm,
array(FLOAT,0) as IssuePx,
array(DATE,0) as NextCouponPaymentDate,
array(DATE,0) as StrikeDate,
array(INT,0) as InstitutionRate,
array(INT,0) as OutLook,
array(DATE,0) as IssueDate,
array(DATE,0) as ValueDate,
array(DATE,0) as MaturityDate,
array(SYMBOL,0) as Issuer,
array(INT,0) as IssuerType,
array(INT,0) as BondRate,
array(SYMBOL,0) as IsCrossMkt,
array(SYMBOL,0) as IssueYear,
array(SYMBOL,0) as ISINCode,
array(INT,0) as SecurityType,
array(INT,0) as SecuritySubType,
array(FLOAT,0) as Spread1,
array(FLOAT,0) as Spread2,
array(FLOAT,0) as Spread3,
array(FLOAT,0) as Spread4,
array(FLOAT,0) as Spread5,
array(FLOAT,0) as GenVal1,
array(FLOAT,0) as GenVal2,
array(FLOAT,0) as GenVal3,
array(FLOAT,0) as GenVal4,
array(FLOAT,0) as GenVal5,
array(STRING,0) as Text1,
array(STRING,0) as Text2,
array(STRING,0) as Text3,
array(STRING,0) as Text4,
array(STRING,0) as Text5,
array(STRING,0) as BondKey,
array(SYMBOL,0) as ListedMarket,
array(INT,0) as QuoteType,
array(FLOAT,0) as BidYield,
array(FLOAT,0) as BidPrice,
array(FLOAT,0) as BidDirtyPrice,
array(DATE,0) as MDQuoteDate,
array(TIME,0) as BidTime,
array(TIME,0) as AskTime,
array(DATE,0) as BidDate,
array(DATE,0) as AskDate,
array(FLOAT,0) as AskYield,
array(FLOAT,0) as AskPrice,
array(FLOAT,0) as AskDirtyPrice,
array(SYMBOL,0) as BidContributorName,
array(SYMBOL,0) as BidContributor,
array(SYMBOL,0) as AskContributorName,
array(SYMBOL,0) as AskContributor,
array(FLOAT,0) as BidVolume,
array(FLOAT,0) as AskVolume,
array(FLOAT,0) as OpenBidPx,
array(FLOAT,0) as OpenBidDirtyPx,
array(FLOAT,0) as OpenBidYld,
array(FLOAT,0) as OpenAskPx,
array(FLOAT,0) as OpenAskDirtyPx,
array(FLOAT,0) as OpenAskYld,
array(TIME,0) as OpenBidTime,
array(TIME,0) as OpenAskTime,
array(FLOAT,0) as ClsBidYld,
array(FLOAT,0) as ClsBidPx,
array(FLOAT,0) as ClsBidDirtyPx,
array(FLOAT,0) as ClsAskYld,
array(FLOAT,0) as ClsAskPx,
array(FLOAT,0) as ClsAskDirtyPx,
array(TIME,0) as ClsBidTime,
array(TIME,0) as ClsAskTime,
array(FLOAT,0) as BidHighPx,
array(TIME,0) as BidHighPxTime,
array(FLOAT,0) as BidHighYld,
array(FLOAT,0) as BidLowYld,
array(FLOAT,0) as BidLowPx,
array(TIME,0) as BidLowPxTime,
array(FLOAT,0) as AskHighPx,
array(FLOAT,0) as AskHighYld,
array(TIME,0) as AskHighPxTime,
array(FLOAT,0) as AskLowPx,
array(FLOAT,0) as AskLowYld,
array(TIME,0) as AskLowPxTime,
array(FLOAT,0) as BidSpread1,
array(FLOAT,0) as BidSpread2,
array(FLOAT,0) as BidSpread3,
array(FLOAT,0) as BidSpread4,
array(FLOAT,0) as BidSpread5,
array(FLOAT,0) as AskSpread1,
array(FLOAT,0) as AskSpread2,
array(FLOAT,0) as AskSpread3,
array(FLOAT,0) as AskSpread4,
array(FLOAT,0) as AskSpread5,
array(FLOAT,0) as MDEntryYield,
array(FLOAT,0) as PrevCloseBidYld,
array(FLOAT,0) as PrevCloseBidPx,
array(FLOAT,0) as PrevCloseBidDirtyPx,
array(TIME,0) as PrevCloseBidTime,
array(FLOAT,0) as PrevCloseAskYld,
array(FLOAT,0) as PrevCloseAskPx,
array(FLOAT,0) as PrevCloseAskDirtyPx,
array(TIME,0) as PrevCloseAskTime,
array(FLOAT,0) as Duration,
array(LONG,0) as NoMDEntriesId,
array(INT,0) as MDEntryType,
array(FLOAT,0) as MDEntryPx,
array(FLOAT,0) as MDEntrySize,
array(INT,0) as QuoteStatus,
array(INT,0) as BidBargainFlag,
array(INT,0) as BidRelationFlag,
array(INT,0) as BidExerciseFlag,
array(INT,0) as AskBargainFlag,
array(INT,0) as AskRelationFlag,
array(INT,0) as AskExerciseFlag,
array(FLOAT,0) as WeightedAverageTradePx,
array(FLOAT,0) as WeightedAverageYield,
array(TIMESTAMP,0) as SumscopeLocalTime,
array(TIMESTAMP,0) as MarketDataTime,
array(INT,0) as BidPriceType,
array(INT,0) as AskPriceType,
array(INT,0) as PriceType,
array(INT,0) as MDPriceLevel,
array(FLOAT,0) as YldNetChg,
array(FLOAT,0) as TrdPxNetChg,
array(INT,0) as NumTrades,
array(INT,0) as BidQuoteStatus,
array(INT,0) as AskQuoteStatus,
array(SYMBOL,0) as MultiBidVolume,
array(SYMBOL,0) as MultiAskVolume,
array(STRING,0) as BidPriceDesc,
array(STRING,0) as AskPriceDesc,
array(INT,0) as InternalIC,
array(STRING,0) as MessageSeq,
array(INT,0) as DealStatus,
array(SYMBOL,0) as TradeInstitution,
array(DATE,0) as DeliveryDate,
array(TIME,0) as MDQuoteTime,
array(TIME,0) as MDValidUntilTime,
array(TIME,0) as ModifyTime,
array(INT,0) as WithinPeriodDeal,
array(SYMBOL,0) as Flag1,
array(SYMBOL,0) as Flag2,
array(SYMBOL,0) as Flag3,
array(SYMBOL,0) as Flag4,
array(SYMBOL,0) as Flag5,
array(STRING,0) as IDBBidRebate,
array(STRING,0) as IDBAskRebate,
array(STRING,0) as IDBRebate,
array(STRING,0) as IDBReturnPoint,
array(SYMBOL,0) as BidPartyName,
array(SYMBOL,0) as OfrPartyName,
array(STRING,0) as BidQuoteId,
array(STRING,0) as AskQuoteId,
array(SYMBOL,0) as DisplayListedMarket,
array(FLOAT,0) as PreWeightedAvgTradePx,
array(FLOAT,0) as PreWeightedAvgYld,
array(INT,0) as IDBSymbol,
array(TIME,0) as IDBBidCreateTime,
array(TIME,0) as IDBAskCreateTime,
array(STRING,0) as IDBDealStatus,
array(STRING,0) as IDBStatus,
array(STRING,0) as IDBInternally,
array(FLOAT,0) as Turnover,
array(SYMBOL,0) as ReferenceBMK,
array(INT,0) as CoupoundFrequency,
array(INT,0) as PaymentType,
array(SYMBOL,0) as BondNameEn,
array(FLOAT,0) as BidQuantity,
array(FLOAT,0) as AskQuantity,
array(INT,0) as MessageSeqNum,
array(INT,0) as IDBCompanyID,
array(STRING,0) as IDBBidReturnPoint,
array(STRING,0) as IDBAskReturnPoint,
array(SYMBOL,0) as BidYldCalculatedExerciseFlag,
array(SYMBOL,0) as AskYldCalculatedExerciseFlag,
array(SYMBOL,0) as YldCalculatedExerciseFlag,
array(FLOAT,0) as ModifiedDuration,
array(STRING,0) as AssetClassParentId,
array(FLOAT,0) as BidPx,
array(FLOAT,0) as OfferPx,
array(STRING,0) as InstruParentId,
array(FLOAT,0) as TradePx,
array(SYMBOL,0) as IssuerCode);

enableTableShareAndPersistence(st,tableName, false, true, capacity,100,0);
}

版权声明:本文转载自网络,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。本站转载出于传播更多优秀技术知识之目的,如有侵权请联系QQ/微信:153890879删除

相关文章
  • 使用箭头函数return数据不能实现

    使用箭头函数return数据不能实现

  • 个人小程序号能接入小程序3D地图吗?

    个人小程序号能接入小程序3D地图吗?

  • vue 移动端项目中,使用了better-scrol

    vue 移动端项目中,使用了better-scrol

  • css如何做出区域平均划分为四列

    css如何做出区域平均划分为四列

腾讯云代理商
海外云服务器