liujia 发布的文章

为何下载银行理财产品的历史净值表这么难

某天,吖江约上东山岭。碰头时,我看到吖江手里拎了个胶袋,有点好奇,不知道里边装了什么。上到顶,有个平台,平台立着一张石圆桌,圆桌四边还有石凳。

我在平台上大概走了一小圈,缓缓气后就话,“走”。
“慢”。吖江应声。
“做惹?”我瞄了一下他。
“算下‘二十四’来”。吖江的一只手,拢进胶袋,拿出一副牌。
“哈?”我懵了,以为上次吖江只系随便讲下。不曾想到,佢真有闲情在东山岭顶打牌,算二十四点。

“算二十四点”的玩法是,俩人各分一半的牌(数),然后随机各自出两张牌,看谁先将四张牌的点数用“加减乘除”法凑成二十四,如3乘8得24、12加12得24。输的一方要收回四张牌。最后看谁手上的牌少,谁就是最终赢家。

分牌时,我心里打起了小咚鼓,因为我看到吖光仅从牌盒中拿走两张鬼(牌)。“10是10点、J是11点,Q是12点,K是13点。”果然,吖江将这些人像牌也作为计算的底牌。我数学不好的,单张牌最大点数是9的话,还勉强可以应付。现在有K等,让我觉得心算的难度上了不止一个台阶。牌未开,我信心就削了半截。想到读小学时,我是被留过堂(课),罚背乘法表的。不出所料,强行上阵的我,几个回合后,连续收了好多张牌。我算不过吖江,难免吃败仗。

上山回来后,我还在想怎么能更快、更多则地算“二十四点”。突然联想到,我最近买“银行理财”产品,买到后它就跌,是不是也与我数学不好有关?我选择理财产品,是看它显示的年化收益率。如在“微众银行app”上的产品,“信银理财 安盈象强债稳健六个月持有期”,显示是“4.67%”的年化收益率,大大的红色字体,很能吸引人的眼球。收益率下边的,用小字写着“近六个月年化收益率”。我好奇,点了小字旁边的小箭头图标,切换显示到“近三个月年化收益率3.08%”、“成立以来年化收益率4.76%”。我想啊,如果它默认显示的是“近三个月年化收益率”,就是最低的那个3.08%,可能我就滑过,不对它有购买的兴趣了。顿时,我觉得我从“微众银行app”上读到的信息是被“筛选”、“美化”过的。在狭小的手机屏幕里,展示的信息有限,要是我有一份这个理财产品的历史净值表数据,那我不就可以计算出各个指定时间区间的年化收益率,以帮助我判断这个理财产品合不合适购买。当前,顺手的计算工具是电脑的表格程序,如excel表。要是他们能提供产品的历史净值excel表或csv文件,那该多好啊,我能直接复制到表格里套上公式计算了,省事省力。

我先在“微众银行app”查看某个理财产品的历史净值。产品的页面默认仅显示最近一个月的单位净值,要点“查看更多”,才能看全些。如果这个产品是每个工作日都会公布当日净值的,那么要滑手机屏五、六次才能看到近半年的净值数字。如果页面的数据多,“微众银行app”还会突然退出,要重新点开app。总之,我在“微众银行app”翻了好久,没有找到下载或导出产品历史净值文件的功能。

然后,我在网上搜索“理财产品历史净值”的关键词,发现产品的发行人,即银行理财子公司的网站有公布产品的净值,但那是当天或最近一个周期的净值,不包含之前日期的净值。我先后打“南银理财”和“华夏银行”的客服电话,她们都说目前没有在网上发布完整的历史净值文件。我又想到,“中国理财网”是官方的,这个监管银行理财产品的网站,会不会有产品的历史净值数据呢?我打开网站一看,真的有。我高兴了一下,但马上又失望了。因为“中国理财网”展示的是产品历史净值的折线图,不是原始的数据。并且难以理解的是,“中国理财网”对产品展示的页面做了限制:不允许用鼠标选中和复制内容。顿时,我由失望变成恼怒了:银行理财产品是你们要求改成净值化、不保本这样运营的,为什么现在连产品最重要的、最基本属性的“净值”数据都不对大众开放?如果我们要自己计算收益率,只能用纸和笔,一个数值一个数值地从手机app里抄下来吗?既然把银行理财产品放到市场里给大家买,为什么又要这么遮着掩着?

“算二十四点”,对于多数普通人来说,可能就系在四张牌中用不同的算法“组合”成二十四点。因为牌点总共才13张,常常练,每天算来算去,也会慢慢熟悉的,知得哪些牌组成二十四点的可能性较大。如此一来,就是数学不及格的我,凭着记忆力,也能对付对付。同理,银行的理财产品,如果每个用户在购买之前,能看到原始的历史净值,能根据自己的需求生成图表和算出参考指标,应该能做出符合自已实际情况的判断,最后决定买不买。便捷的、原始的、完整的历史净值数据,也能反映出理财产品发行人的管理能力,有利于市场的竞争。如果理财产品的代销机构、理财产品的发行机构、理财产品的监管机购没一个能提供可方便用户计算的历史净值数据表,那么就是在“二十四”的游戏中不给看底牌,不讲解怎么算得二十四点,没得玩。

微众银行 - 信银理财 - 多彩象大中华固收稳健月开2号 - 购买后99天赎回 - 到手年化收益率约 3.04%

我在微众银行购买的“信银理财多彩象大中华固收稳健月开2号”产品,2022-09-15赎回到账。持有99天,计得实际年化收益率约3.04%。购买时净值:1.0056;赎回时净值:1.0138。

评价:不太像月开产品的收益率,同期横向对比,月开的产品可能有4%。

打网线水晶头

前几天,本地电信有人打电话来,说因为我是电信老用户,可免费将我的宽带速率升到三百兆,免费用两年。我当前的套餐是二十兆特惠价的宽带。其实早先在实际使用过程中,我就知道下载速率是一百兆,免费升级了的。这次,电信主动打电话来又免费升级,我当然乐意接受。

重启光猫后,我在电脑浏览器里测速,顶多一百兆,不是三百兆。我想了又想,恍然大悟:本栋楼加装电梯后,将弱电井的光纤线移位了。当时我为了方便,屋外的光纤是钻孔放到厅的角几上,宽带再经角几上的一条网线从网线面板回到屋内的弱电箱,弱电箱的网线再到各只房间。电信装机师傅装光猫时,一定要求开通IPTV照相完工,所以师傅是将角几的一条网线一分为二,电脑和IPTV各自使用一条网线中的四条线芯(见图1)。弱电箱里的线也相应使用网线中的四条线芯接驳。在百兆的使用环境中,这样是可以的。但要使用网线的传输速度超过100Mbps,就必须使用网线的全部八条线芯。我感叹,都话世事多变,连里几条网线也系在这十年间变来变去的:因加装电梯需求变、因电信IPTV接口变、现在又要因升级速率变。具体变化是:网线打了水晶头后,又被剪掉直接驳铜线,现在又要驳开铜线打回水晶头。来来回回。

电信升级宽带速率后,如果是超过一百兆的,首先要需要检查光猫的网线口是否支持千兆,然后检查网线是否支持千兆,再检查连在网线上的设备(交换机、或电脑网卡)是否支持千兆。如果是干路上的网线或设备有一个不支持千兆,那么终端的设备也不能获得超过100Mbps的速率,这就是他们说的“木桶效应”——以最低速率的为实际使用值。

虽然300Mbps是100Mbps的三倍,假如要花钱升级,我是不愿意的。平时用电脑,我就是看看网页,下载些小文件,一百兆也够用了的。偶尔下载超过10GB大小的游戏文件时,我会有点心急,觉得下载要等嘅久。为了体验这300Mbps的新速度,我替换了一条网线,打了六个网线水晶头。以前我是挺喜欢打网线水晶头的,因为有成就感啊:一般人没有这专打水晶头用的网线钳。不过,时代在变化,现在新装修的房子,基本上也不用打水晶头了,因为有网线的插口面板,如同墙上插座的面板,将线用手指按压咬合网线线芯后就可以了。

今天我开始动手打水晶头,忘记了线序,不得不在手机上搜索示例,按“白橙、橙、白绿、蓝、白蓝、绿、白棕、棕”的口诀背,再依着顺序排线,打上水晶头。打第一、第二个还好,要打第三个水晶头时,我已经有点不耐烦了。心里想,这多枯燥啊,手指头都要搓疼。有一条网线,是测得第4条线芯信号不通。我截掉旧水晶头,重新打一个水晶头,一测还是第4条线芯不亮灯。我只好倒转来,截掉网线另一端的水晶头,再换上新的。又来测试,我去,好家伙,仅三个灯亮,这新做的水晶头还不如旧水晶头呢。我发了脾气,气冲冲地用左手顺着网线用力拽,硬打硬要将网线从咬合的水晶头拔出来般。拽了一次没拽出来,我又接着拽了两次。我捏着网线的水晶头看,噢,网线皮套被我从水晶头拉出来了。我又用网线钳,着力再钳了两次,要将水晶头里的铜片往网线线芯再压压,力求水晶头的铜片和网线铜芯接触良好。哎呀,果真,现在网线八个测试灯都会闪亮了。我不敢说这是“大力出神奇”,因为我觉得这是质量问题,要么是材料和工具(水晶头、网线钳)有问题,要么是我手艺差。但我不想加工,不想再截、再打水晶头了,我还要煲饭的呢。我自我安慰,这系自家用的,不嫌。如果以后上不了网,我知道是哪条网线捣鬼就行。

两年后,电信是否会要求我为这三百兆速率的宽带多付些钱,我不知道。按我现在的想法,我宁愿按现有的包年价(360元)续用,一百兆就一百兆。

ubuntu 22.04 - jammy - autoinstall - pxe 自动安装

上一篇,测试了 debian 11 的pxe自动安装:https://liujia.anqun.org/index.php/archives/3994/ 。 这里想试试 ubuntu 22.04的。

  1. /srv/tftp/os-images/bullseye/netboot/pxelinux.cfg/01-08-00-27-49-b4-6c # 偷懒,直接使用 debian 11 netboot 中的 pxelinux 文件。仅对pxelinux的配置文件内容做改动。其中 vmlinuz 和 initrd 是从 ubuntu-22.04.1-live-server-amd64.iso 提取到的。http://192.168.3.1/jammy/ 中有 user-data 和 meta-data 配置文件

    DEFAULT linux
     SAY Now booting the kernel from SYSLINUX...
    LABEL linux
    #  KERNEL debian-installer/amd64/linux
    #  APPEND auto=true hostname=auto2 domain=local preseed/url=tftp://192.168.3.1/os-images/bullseye/preseed.cfg initrd=debian-installer/amd64/initrd.gz
    
    KERNEL http://192.168.3.1/jammy/vmlinuz
    INITRD http://192.168.3.1/jammy/initrd
    APPEND ip=dhcp autoinstall ds=nocloud-net;s=http://192.168.3.1/jammy/ url=http://192.168.3.1/jammy/ubuntu-22.04.1-live-server-amd64.iso
  2. http://192.168.3.1/jammy/user-data # 自动安装的应答文件内容,这里仅设置用户及安装openssh-server

    #cloud-config
    autoinstall:
     identity:
    hostname: jammy2
    password: $6$5lpwCLsKLEzMkSJc$keOAhA6aO/5RocGThmhVA7LSNuW911Rx5HHXFEa75oGK20cEdAAgn14H5f5nGeq6QgcSyLPrWcg1.JvjXbhrN/
    username: ubuntu
     locale: zh_CN.UTF-8
     ssh:
    install-server: yes
     late-commands:
     - 'echo "ubuntu ALL=(ALL) NOPASSWD:ALL" > /target/etc/sudoers.d/ubuntu-nopw'
     - chmod 440 /target/etc/sudoers.d/ubuntu-nopw
     version: 1

遇到的问题,安装ubuntu 22.04的虚拟机分配了4GB内存,还不够用,用6GB内存后才顺利安装完成。

参考:

debian 11 网络远程自动安装测试 - pxe - preseed.cfg

如机房的机子,一般是远程管理,不方便实地用光盘或U盘安装系统,如 debian 11 是提供了完整的网络安装 netboot 文件及自动配置安装参数 preseed.cfg 的说明。

环境:用 VirtualBox 来创建两个虚拟机,A机为pxe服务所在的机子,B机当客户机。A机安装debian 11,分配两张网卡,一张公网,另一张是内网(enp0s8)

步骤:

  1. apt install dnsmasq # 在A机安装dnsmasq,为B机自动自动分配IP及网络引导启动、安装系统
  2. /etc/dnsmasq.conf # 配置文件内容。大概是设置好tftp的路径 /srv/tftp ,及为B机(传统BIOS启动)设置启动文件为 os-images/bullseye/netboot/pxelinux.0

    interface=enp0s8
    domain=debian.local
    dhcp-range=192.168.3.3,192.168.3.253,255.255.255.0,1h
    enable-tftp
    tftp-root=/srv/tftp
    # dhcp-optsfile=/etc/dnsmasq.opt
    #dhcp-match=ipxe,175
    # dhcp-boot=net:ipxe,default.ipxe
    # pxe-service=x86PC,"ipxe bios", ipxe/undionly.kpxe
    # pxe-service=tag:x86-64_efi,"ipxe efi", ipxe/ipxe.efi
    
    dhcp-match=set:bios-x86,option:client-arch,0
    # dhcp-boot=tag:bios-x86,ipxe/undionly.kpxe
    dhcp-boot=tag:bios-x86,os-images/bullseye/netboot/pxelinux.0
    
    # boot config for UEFI systems
    # dhcp-match=set:efi-x86_64,option:client-arch,7
    # dhcp-match=set:efi-x86_64,option:client-arch,9
    # dhcp-boot=tag:efi-x86_64,ipxe/ipxe.efi
    
    # dhcp-match=set:ipxe,175
    # dhcp-boot=tag:ipxe,http://192.168.3.1/boot2.php
    # dhcp-userclass=set:ENH,iPXE
    # dhcp-boot=tag:ENH,default.ipxe
  3. /srv/tftp/os-images/bullseye/netboot/pxelinux.cfg/01-08-00-27-49-b4-6c # 以B机的网卡mac地址为名创建一个pxelinux的启动配置文件内容。大概是将debian的自动应答文件preseed.cfg作为启动参数加载

    DEFAULT linux
     SAY Now booting the kernel from SYSLINUX...
    LABEL linux
     KERNEL debian-installer/amd64/linux
     APPEND auto=true hostname=auto2 domain=local preseed/url=tftp://192.168.3.1/os-images/bullseye/preseed.cfg initrd=debian-installer/amd64/initrd.gz
  4. os-images/bullseye/preseed.cfg # 文件内容。目的是自动回答安装过程中的问题,无人值守就可以完成系统安装

    #### Contents of the preconfiguration file (for bullseye). refer: https://www.debian.org/releases/bullseye/example-preseed.txt
    d-i debian-installer/locale string en_US
    d-i keyboard-configuration/xkb-keymap select us
    d-i netcfg/choose_interface select auto
    d-i netcfg/get_hostname string unassigned-hostname
    d-i netcfg/get_domain string unassigned-domain
    d-i netcfg/hostname string auto1
    d-i netcfg/wireless_wep string
    d-i mirror/country string manual
    d-i mirror/http/hostname string ftp.cn.debian.org
    d-i mirror/http/directory string /debian
    d-i mirror/http/proxy string
    d-i passwd/root-password password r00tme
    d-i passwd/root-password-again password r00tme
    d-i passwd/user-fullname string Debian User
    d-i passwd/username string debian
    d-i passwd/user-password password insecure
    d-i passwd/user-password-again password insecure
    d-i clock-setup/utc boolean true
    d-i time/zone string US/Eastern
    d-i clock-setup/ntp boolean true
    d-i partman-auto/method string lvm
    d-i partman-auto-lvm/guided_size string max
    d-i partman-lvm/device_remove_lvm boolean true
    d-i partman-md/device_remove_md boolean true
    d-i partman-lvm/confirm boolean true
    d-i partman-lvm/confirm_nooverwrite boolean true
    d-i partman-auto/choose_recipe select atomic
    d-i partman-partitioning/confirm_write_new_label boolean true
    d-i partman/choose_partition select finish
    d-i partman/confirm boolean true
    d-i partman/confirm_nooverwrite boolean true
    d-i partman-md/confirm boolean true
    d-i partman-partitioning/confirm_write_new_label boolean true
    d-i partman/choose_partition select finish
    d-i partman/confirm boolean true
    d-i partman/confirm_nooverwrite boolean true
    d-i apt-setup/cdrom/set-first boolean false
    tasksel tasksel/first multiselect standard, ssh-server
    popularity-contest popularity-contest/participate boolean true
    d-i grub-installer/only_debian boolean true
    d-i grub-installer/with_other_os boolean true
    d-i grub-installer/bootdev  string default
    d-i finish-install/reboot_in_progress note
  5. /etc/nftables.conf # 如果A机要为B机充当网关,转发上网,还需要配置一下。发现一个现象是B机有时上不了外网,要重启一下nftables服务

    #!/usr/sbin/nft -f
    
    flush ruleset
    
    table inet filter {
        chain input {
                type filter hook input priority 0;
        }
        chain forward {
                type filter hook forward priority 0;
        }
        chain output {
                type filter hook output priority 0;
        }
    }
    
    #######
    table inet nat {
        chain input {
                type nat hook input priority 0; policy accept;
                ip protocol icmp accept
        }
    
        chain prerouting {
                type nat hook prerouting priority 0; policy accept;
        }
    
        chain postrouting {
                type nat hook postrouting priority 100; policy accept;
    #               ip saddr 192.168.3.0/24 oifname "enp0s3" masquerade
                oifname "enp0s3" masquerade
        }
    
        chain output {
                type nat hook output priority 0; policy accept;
        }
    }

参考: